From 2f179987eee898e1ca4c1565e303bdc0d9b1206c Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期二, 27 一月 2026 13:11:13 +0800
Subject: [PATCH] 优化员工签到到,上模单

---
 manifest.json                                 |    4 
 pages/MJGL/shangmudan/MouldUpperBill.vue      |   12 
 pages/EmployeeRecords/EmployeeRecordsBill.vue | 2166 ++++++++++++++++++++-------------------------------------
 3 files changed, 778 insertions(+), 1,404 deletions(-)

diff --git a/manifest.json b/manifest.json
index 3f16198..f206795 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "鏅轰簯LMES",
     "appid" : "__UNI__B002F49",
     "description" : "",
-    "versionName" : "2.0.61",
-    "versionCode" : 261,
+    "versionName" : "2.0.62",
+    "versionCode" : 262,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages/EmployeeRecords/EmployeeRecordsBill.vue b/pages/EmployeeRecords/EmployeeRecordsBill.vue
index 834c809..7cbb4af 100644
--- a/pages/EmployeeRecords/EmployeeRecordsBill.vue
+++ b/pages/EmployeeRecords/EmployeeRecordsBill.vue
@@ -1,541 +1,520 @@
 <template>
-	<view class="form">
-		<view class="form-base-info">
+	<view>
+		<view class="form">
 			<view class="form-item">
 				<view class="title">鏉$爜</view>
-				<view class="right">
-					<input type="text" :focus="HBarCodeFocus" v-model="HBarCode"
-						@confirm="GetMeesageByBarCode(HBarCode)" />
+				<view class="right" style="width: 350rpx;">
+					<input type="text" :focus="HBarCodeFocus" v-model="hform.HBarCode" placeholder="璇锋壂鎻�(鎴栬緭鍏�)鏉$爜"
+						@confirm="getHBarCodeData(hform.HBarCode)" />
 				</view>
-				<view class="right-icon">
-					<uni-icons type="scan"
-						style="background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" size="20"
-						@click="toScanCode2"></uni-icons>
-				</view>
+				<uni-icons type="scan"
+					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
+					size="20" @click="toScanCode"></uni-icons>
 			</view>
-			<view class="form-item">
-				<view class="title">瑙掕壊</view>
-				<view class="right">
-					<!-- 澶氶�変笅鎷夋 -->
-					<uni-data-select v-model="hform.HRoles" :multiple="true" :localdata="roleOptions"
-						placeholder="璇烽�夋嫨瑙掕壊" :clear="false" @change="onRoleChange">
-					</uni-data-select>
-				</view>
+			<view class="tabs">
+				<view :class="tabs == 0 ? 'on':''" @tap="() => { tabs = 0; reFocusBarCode(); }">鍗曟嵁淇℃伅</view>
+				<view :class="tabs == 1 ? 'on':''" @tap="() => { tabs = 1; reFocusBarCode(); }">宸ュ崟淇℃伅</view>
+				<view :class="tabs == 2 ? 'on':''" @tap="() => { tabs = 2; reFocusBarCode(); }">鍒跺崟淇℃伅</view>
 			</view>
-			<view class="form-item">
-				<view class="title">鐢熶骇杞﹂棿:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHDeptName" placeholder="璇烽�夋嫨杞﹂棿" v-model="hform.HDeptName"
-						@input="HDeptNameChange"></uni-combox>
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">绛惧埌浜哄憳:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHEmpName" placeholder="璇烽�夋嫨绛惧埌浜哄憳" v-model="hform.HEmpName"
-						@input="HEmpNameChange"></uni-combox>
-				</view>
-			</view>
-			
-			<view class="form-item">
-				<view class="title">鐝粍:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHGroupName" placeholder="璇烽�夋嫨鐝粍" v-model="hform.HGroupName"
-						@input="HGroupNameChange"></uni-combox>
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">鐝:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHShiftsName" placeholder="璇烽�夋嫨鐝" v-model="hform.HShiftsName"
-						@input="HShiftsNameChange"></uni-combox>
-				</view>
-			</view>	
-			<view class="form-item">
-				<view class="title">鐢熶骇璧勬簮:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHSourceName" placeholder="璇烽�夋嫨鐢熶骇璧勬簮" v-model="hform.HSourceName"
-						@input="HSourceNameChange"></uni-combox>
-				</view>
-			</view>	
-			<view class="form-item">
-				<view class="title">宸ュ簭:</view>
-				<view class="right">
-					<uni-combox :candidates="arrayHProcName" placeholder="璇烽�夋嫨宸ュ簭" v-model="hform.HProcName"
-						@input="HProcNameChange"></uni-combox>
-				</view>
-			</view>	
-			<view class="form-item">
-				<view class="title">鏃ユ湡</view>
-				<view class="right disabled">
-					<input type="text" disabled :value="hform.HDate" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">鍗曟嵁鍙�</view>
-				<view class="right disabled">
-					<input type="text" disabled :value="hform.HBillNo" />
-				</view>
-			</view>
-		</view>
-		<view class="tabs">
-			<view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鏈哄彴淇℃伅</view>
-			<view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">宸ュ崟淇℃伅</view>
-			<view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍒跺崟淇℃伅</view>
-		</view>
-		<!-- 瑁呯淇℃伅 -->
-		<view v-if="tabs == 1" class="work-order-cards">
-					<view v-for="(item, index) in listData" :key="item.index" class="work-order-card">
-						<view class="card-header">
-							<text class="card-title">宸ュ崟淇℃伅 {{ index + 1 }}</text>
-							<checkbox :checked="item.checked" style="transform:scale(0.8)" color="#3A78FF" 
-								@change="onCardCheckChange(item, index)" />
-						</view>
-						<view class="card-content">
-							<view class="card-row">
-								<text class="card-label">娴佽浆鍗″彿锛�</text>
-								<text class="card-value">{{ item['娴佽浆鍗″彿'] || '-' }}</text>
-							</view>
-							<view class="card-row">
-								<text class="card-label">鐗╂枡浠g爜锛�</text>
-								<text class="card-value">{{ item['鐗╂枡浠g爜'] || '-' }}</text>
-							</view>
-							<view class="card-row">
-								<text class="card-label">鐗╂枡鍚嶇О锛�</text>
-								<text class="card-value">{{ item['鐗╂枡鍚嶇О'] || '-' }}</text>
-							</view>
-							<view class="card-row">
-								<text class="card-label">瑙勬牸鍨嬪彿锛�</text>
-								<text class="card-value">{{ item['瑙勬牸鍨嬪彿'] || '-' }}</text>
-							</view>
-							<view class="card-row">
-								<text class="card-label">鏁伴噺锛�</text>
-								<text class="card-value">{{ item['鏁伴噺'] || '0' }}</text>
-							</view>
-							<view class="card-row">
-								<text class="card-label">鐢熶骇璧勬簮锛�</text>
-								<text class="card-value">{{ item['鐢熶骇璧勬簮'] || '-' }}</text>
-							</view>
-						</view>
-					</view>
-					
-					<view v-if="listData.length === 0" class="empty-card">
-						<uni-icons type="info" size="30" color="#999"></uni-icons>
-						<text class="empty-text">鏆傛棤宸ュ崟淇℃伅</text>
-						<text class="empty-tip">璇峰厛鎵弿鏉$爜鑾峰彇宸ュ崟淇℃伅</text>
-					</view>
-				</view>
-		<view v-if="tabs == 0" class="machine-info-container">
-			<view class="form-item" v-if="false">
-				<view class="title">璁惧ID:</view>
-				<view class="righton">
-					<input name="HEquipID" disabled v-model="hform.HEquipID" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">璁惧鍚嶇О:</view>
-				<view class="righton">
-					<input name="HEquipName" disabled v-model="hform.HEquipName" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">妯″叿缂栫爜:</view>
-				<view class="righton">
-					<input name="HMouldNo" disabled v-model="hform.HMouldNo" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">妯″叿鍚嶇О:</view>
-				<view class="righton">
-					<input name="HMouldName" disabled v-model="hform.HMouldName" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="title">妯″叿鐘舵��:</view>
-				<view class="righton">
-					<input name="HMouldState" disabled v-model="hform.HMouldState" />
-				</view>
-			</view>
-			<!--                <label class="checkbox" style="float: right;">
-                    <checkbox :checked="hform.chkHBarflag" style="transform:scale(0.8)" disabled color="#4f81fc" />鏉$爜鏍稿
-                </label> -->
-		</view>
-		<!-- 鍒跺崟淇℃伅 -->
-		<view v-if="tabs == 2">
-			<view class="bill-info">
+
+			<!-- 鍗曟嵁淇℃伅 -->
+			<view v-if="tabs == 0">
 				<view class="form-item">
-					<view class="title">鍒涘缓鏃ユ湡</view>
+					<view class="title">瑙掕壊</view>
 					<view class="right">
-						<uni-datetime-picker type="date" v-model="hform.HDate">
-							<input type="text" v-model="hform.HDate" disabled />
-						</uni-datetime-picker>
+						<!-- 澶氶�変笅鎷夋 -->
+						<uni-data-select v-model="hform.HRoles" :multiple="true" :localdata="roleOptions"
+							placeholder="璇烽�夋嫨瑙掕壊" :clear="false" @change="onRoleChange">
+						</uni-data-select>
 					</view>
 				</view>
-			</view>
-			<view class="bill-info">
 				<view class="form-item">
-					<view class="title">鍒涘缓浜�</view>
-					<view class="right disabled">
-						<input type="text" disabled :value="hform.HMaker" />
-					</view>
-				</view>
-			</view>
-			<view class="bill-info">
-				<view class="form-item">
-					<view class="title">淇敼鏃ユ湡</view>
+					<view class="title"><text>*</text>鐢熶骇杞﹂棿:</view>
 					<view class="right">
-						<uni-datetime-picker type="date" v-model="hform.HUpDateDate">
-							<input type="text" v-model="hform.HDate" disabled />
-						</uni-datetime-picker>
+						<uni-combox :candidates="arrayHDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" v-model="hform.HDeptName"
+							@input="HDeptNameChange"></uni-combox>
 					</view>
 				</view>
-			</view>
-			<view class="bill-info">
 				<view class="form-item">
-					<view class="title">淇敼浜�</view>
-					<view class="right disabled">
-						<input type="text" disabled :value="hform.HUpDater" />
-					</view>
-				</view>
-			</view>
-			<view class="bill-info">
-				<view class="form-item">
-					<view class="title">淇敼鏃ユ湡</view>
+					<view class="title"><text>*</text>绛惧埌浜哄憳:</view>
 					<view class="right">
-						<uni-datetime-picker type="date" v-model="hform.HCheckDate">
-							<input type="text" v-model="hform.HDate" disabled />
-						</uni-datetime-picker>
+						<uni-combox :candidates="arrayHEmpName" placeholder="璇烽�夋嫨鎿嶄綔鍛�" v-model="hform.HEmpName"
+							@input="HEmpNameChange"></uni-combox>
 					</view>
 				</view>
-			</view>
-			<view class="bill-info">
 				<view class="form-item">
-					<view class="title">淇敼浜�</view>
-					<view class="right disabled">
-						<input type="text" disabled :value="hform.HChecker" />
+					<view class="title"><text>*</text>鐢熶骇璧勬簮:</view>
+					<view class="right">
+						<uni-combox :candidates="arrayHSourceName" placeholder="璇烽�夋嫨鐢熶骇璧勬簮" v-model="hform.HSourceName"
+							@input="HSourceNameChange"></uni-combox>
 					</view>
 				</view>
-			</view>
-			<view class="bill-info">
 				<view class="form-item">
-					<view class="title">鍗曟嵁鍙�</view>
-					<view class="right disabled">
-						<input type="text" disabled :value="hform.HBillNo" />
+					<view class="title"><text>*</text>鐢熶骇鐝粍:</view>
+					<view class="right">
+						<uni-combox :candidates="arrayHGroupName" placeholder="璇烽�夋嫨鐝粍" v-model="hform.HGroupName"
+							@input="HGroupNameChange"></uni-combox>
 					</view>
 				</view>
-			</view>
-
-			<view class="bill-info">
 				<view class="form-item">
-					<view class="title">缁勭粐</view>
-					<view class="right disabled">
-						<input type="text" disabled :value="hform.HStockOrgName" />
+					<view class="title"><text>*</text>鐢熶骇鐝:</view>
+					<view class="right">
+						<uni-combox :candidates="arrayHShiftsName" placeholder="璇烽�夋嫨鐝" v-model="hform.HShiftsName"
+							@input="HShiftsNameChange"></uni-combox>
 					</view>
 				</view>
+				<view class="form-item">
+					<view class="title"><text>*</text>妯″叿瀹為檯鍑烘暟:</view>
+					<view class="right">
+						<input name="HMouldRelQty" v-model="hform.HMouldRelQty" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">宸ュ簭:</view>
+					<view class="right">
+						<uni-combox :candidates="arrayHProcName" placeholder="璇烽�夋嫨宸ュ簭" v-model="hform.HProcName"
+							@input="HProcNameChange"></uni-combox>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">璁惧缂栧彿:</view>
+					<view class="righton">
+						<input name="HEquipNumber" disabled v-model="hform.HEquipNumber" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">璁惧鍚嶇О:</view>
+					<view class="righton">
+						<input name="HEquipName" disabled v-model="hform.HEquipName" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">妯″叿缂栫爜:</view>
+					<view class="righton">
+						<input name="HMouldNo" disabled v-model="hform.HMouldNo" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">妯″叿鍚嶇О:</view>
+					<view class="righton">
+						<input name="HMouldName" disabled v-model="hform.HMouldName" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">妯″叿鐘舵��:</view>
+					<view class="righton">
+						<input name="HMouldState" disabled v-model="hform.HMouldState" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">鍗曟嵁鍙�:</view>
+					<view class="righton">
+						<input name="HBillNo" disabled v-model="hform.HBillNo" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">鍗曟嵁鏃ユ湡:</view>
+					<view class="righton">
+						<picker mode="date" v-model="hform.HDate" @change="HDateChange">
+							<input disabled v-model="hform.HDate" placeholder="璇烽�夋嫨鏃ユ湡" />
+						</picker>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">澶囨敞:</view>
+					<view class="right">
+						<textarea name="HRemark" v-model="hform.HRemark" auto-height placeholder="璇疯緭鍏ュ娉�"></textarea>
+					</view>
+				</view>
+
 			</view>
+			<!-- 妯″叿淇℃伅 -->
+			<view v-if="tabs == 1">
+				<view class="card-list" :style="{height: `${listTableHeight}px`, overflow: 'auto'}">
+					<!-- 鍗$墖鍒楄〃 -->
+					<view v-for="(item, index) in listData" :key="index" class="card-item">
+						<uni-card style="margin: 10rpx 0;">
+							<view class="card-content">
+								<view class="card-row">
+									<text class="card-label">娴佽浆鍗″彿锛�</text>
+									<text class="card-value">{{ item['娴佽浆鍗″彿'] || '-' }}</text>
+								</view>
+								<view class="card-row">
+									<text class="card-label">鐗╂枡浠g爜锛�</text>
+									<text class="card-value">{{ item['鐗╂枡浠g爜'] || '-' }}</text>
+								</view>
+								<view class="card-row">
+									<text class="card-label">鐗╂枡鍚嶇О锛�</text>
+									<text class="card-value">{{ item['鐗╂枡鍚嶇О'] || '-' }}</text>
+								</view>
+								<view class="card-row">
+									<text class="card-label">瑙勬牸鍨嬪彿锛�</text>
+									<text class="card-value">{{ item['瑙勬牸鍨嬪彿'] || '-' }}</text>
+								</view>
+								<view class="card-row">
+									<text class="card-label">鏁伴噺锛�</text>
+									<text class="card-value">{{ item['鏁伴噺'] || '0' }}</text>
+								</view>
+								<view class="card-row">
+									<text class="card-label">鐢熶骇璧勬簮锛�</text>
+									<text class="card-value">{{ item['鐢熶骇璧勬簮'] || '-' }}</text>
+								</view>
+							</view>
+						</uni-card>
+					</view>
 
-		</view>
-		<view class="bottom-btn" id="bottom-btn">
-			<button :class="EnableSubmit?'btn-a':'btn-c'" :disabled="!EnableSubmit" size="mini"
-				@tap="cmdSubmit">鎻愪氦</button>
-			<view style="flex: 1;"></view>
-			<!-- <button class="btn-d" size="mini" @tap="cmdDelete">鍒犻櫎</button> -->
-			<button class="btn-c" size="mini" @tap="cmdExit">閫�鍑�</button>
-		</view>
-		<!-- 鎵撳嵃妯″潡 -->
-		<labelPrinterComponentVue ref="labelPrinter" :printInfo="printInfo" :printMode="'cpcl'">
-		</labelPrinterComponentVue>
-
-		<!-- 鎵撳嵃鏈洪�夋嫨鍒楄〃 -->
-		<view v-if="maskShow" class="uni-mask" @tap="maskShow = false">
-			<scroll-view class="uni-scroll_box" scroll-y>
-				<view class="uni-list-box" v-for="(device, index) in discoveredDevices" :key="index"
-					@tap="connectBT(device)">
-					<view class="uni-list_name">鍚嶇О锛歿{ device.name }}</view>
-					<view class="uni-list_item">{{ connectedDeviceId === device.address?'宸茶繛鎺�':'鏈繛鎺�' }}</view>
-				</view>
-			</scroll-view>
-		</view>
-		<view v-if="showResultTable" class="result-modal">
-			<view class="modal-mask" @tap="closeResultTable"></view>
-			<view class="modal-content">
-				<view class="modal-header">
-					<text class="modal-title">绛惧埌缁撴灉</text>
-					<uni-icons type="close" size="20" @tap="closeResultTable"></uni-icons>
-				</view>
-				<view class="modal-body">
-					<zb-table :fit="true" :style="{height: '400px'}" :columns="resultTableColumns"
-						:data="resultTableData" :show-header="true" :border="true" :row-key="row => row.index" />
-				</view>
-				<view class="modal-footer">
-					<button class="btn-a" size="mini" @tap="toAddNew">鏂板</button>
-					<button class="btn-a" size="mini" @tap="search">鎵撳嵃</button>
-					<view style="flex: 1;"></view>
-					<button class="btn-c" size="mini" @tap="closeResultTable">鍏抽棴</button>
+					<view class="over" v-if="listData.length == 0">鏆傛棤宸ュ崟淇℃伅</view>
 				</view>
 			</view>
 
+			<view v-if="tabs == 2">
+				<view class="form-item">
+					<view class="title">鍒跺崟浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HMaker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">鍒跺崟鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HMakeDate" v-model="hform.HMakeDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HMakeDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HUpDater" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HUpDateDate" v-model="hform.HUpDateDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HUpDateDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HChecker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HCheckDate" v-model="hform.HCheckDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HCheckDate" disabled />
+					</view>
+				</view>
+
+			</view>
+
+			<view class="bottom-btn">
+				<button v-if="btnType == 1 && !isEdit" class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+				<button v-if="btnType != 1 && !isEdit" class="btn-a" size="mini" @tap="ifEdit">淇敼</button>
+				<button v-if="btnType != 1 && isEdit" class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+				<button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+			</view>
 		</view>
+
 	</view>
 </template>
-
 <script>
-	import dayjs from 'dayjs'
+	import getDateTime from '@/utils/getdateTime.js';
 	import {
 		getUserInfo
-	} from "../../utils/auth";
+	} from "@/utils/auth.js";
+	import dayjs from 'dayjs'
 	import {
 		CommonUtils
 	} from "@/utils/common.js"
 	import {
 		MpaasScan
 	} from "@/utils/mpaasScan.js"
-	import labelPrinterComponentVue from "@/components/labelPrinterComponent/labelPrinterComponent.vue"
-	import getdateTime from '../../utils/getdateTime';
 	export default {
-		components: {
-			labelPrinterComponentVue
-		},
 		data() {
 			return {
-
-				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
 				// 璁$畻鍒楄〃楂樺害
 				bottomBtnTop: 0,
 				listTableTop: 0,
-				// 鍏叡鍙橀噺 
+				tabs: 0,
+
+				userInfo: getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+				linterid: '',
+				HBillNo: '',
+				btnType: 1, //1鏂板锛�3淇敼
+				showmore: false,
+				HBarCodeFocus: false,
+
 				arrayHDeptName: [], //閮ㄩ棬
 				HDeptNameList: [],
-				arrayHEmpName: [], //鍛樺伐
+				arrayHEmpName: [], //鍙戠幇浜�/璐熻矗浜�
 				HEmpNameList: [],
+				arrayHSourceName: [], //鐢熶骇璧勬簮
+				HSourceNameList: [],
 				arrayHGroupName: [], //鐝粍
 				HGroupNameList: [],
 				arrayHShiftsName: [], //鐝
 				HShiftsNameList: [],
-				arrayHSourceName: [], //鐢熶骇璧勬簮
-				HSourceNameList: [],
 				arrayHProcName: [], //宸ュ簭
 				HProcNameList: [],
-				
-				maskShow:false,
-				printInfo:false,
-				EnableScanBarCodePack: true,
-				EnableSubmit: true,
-				HBarCodePackFocus: false,
-				HBarCodeFocus: false,
 
-				HBarCode: '', // 鍖呮潯鐮�
-				tabs: 0,
-				HBillType: '4616',
-				HBillSubType: '1', //瀛愮被鍨嬶紙1瑁呯銆�2缁勬墭锛�
-				OperationType: 1, //鎿嶄綔绫诲瀷锛�1鏂板銆�2浠庣紦瀛樺垪琛ㄤ腑杩斿洖锛�
-				HMaterNumber_Pack: "", //鎵樻潯鐮佸搴旂墿鏂欎唬鐮�
-				listOption: [],
-				listData: [],
-				columns: [{
-						type: 'selection',
-						fixed: true,
-						width: 50
-					},
-					{
-						name: 'index',
-						label: '搴忓彿',
-						width: 60,
-						hidden: true
-					},
-					{
-						name: '娴佽浆鍗″彿',
-						label: '娴佽浆鍗″彿',
-						width: 100,
-					},
-					{
-						name: '鏁伴噺',
-						label: '鏁伴噺',
-						width: 100,
-					},
-					{
-						name: '鐗╂枡浠g爜',
-						label: '鐗╂枡浠g爜',
-						width: 100,
-					},
-					{
-						name: '鐗╂枡鍚嶇О',
-						label: '鐗╂枡鍚嶇О',
-						width: 100,
-					},
-					{
-						name: '瑙勬牸鍨嬪彿',
-						label: '瑙勬牸鍨嬪彿',
-						width: 100,
-					},
-					{
-						name: '鏁伴噺',
-						label: '鏁伴噺',
-						width: 100,
-					},
-					{
-						name: '鐢熶骇璧勬簮',
-						label: '鐢熶骇璧勬簮',
-						width: 100,
-					}
-				],
-				selectedRows: [], // 瀛樺偍閫変腑鐨勬暟鎹�
-				titleData: [], //涓嶉渶瑕佹樉绀虹殑瀛楁
-				OperationType: 1, //浠庣紦瀛樺垪琛ㄤ腑杩斿洖鏁版嵁绫诲瀷锛�1鏂板銆�2浠庣紦瀛樺垪琛ㄤ腑杩�
-				//灞曠ず琛ㄥ崟
-				showResultTable: false, // 鎺у埗缁撴灉琛ㄦ牸鏄剧ず
-				resultTableData: [], // 缁撴灉琛ㄦ牸鏁版嵁
-				resultTableColumns: [{
-						name: '璁惧缂栫爜',
-						label: '璁惧缂栫爜',
-						width: 120,
-					},
-					{
-						name: '璁惧鍚嶇О',
-						label: '璁惧鍚嶇О',
-						width: 120,
-					},
-					{
-						name: '绛惧埌瑙掕壊',
-						label: '绛惧埌瑙掕壊',
-						width: 100,
-					},
-					{
-						name: '鐢熶骇璧勬簮鍚嶇О',
-						label: '鐢熶骇璧勬簮鍚嶇О',
-						width: 100,
-					}
-				],
-				//
 
-				// 琛ㄥ崟鎻愪氦鍊�
+				isEdit: false,
+				listOption: [], // 鍒楄〃閫夐」
+				listData: [], // 琛ㄦ牸鏁版嵁
+				selectedRows: [], // 琛ㄦ牸閫変腑鐨勬暟鎹�
+				roleOptions: [], // 涓嬫媺妗嗛�夐」
+				roleList: [], // 瀹屾暣瑙掕壊鍒楄〃锛堝寘鍚獻D锛�
+
+				// 娣诲姞鐢ㄦ埛宸茬粦瀹氳鑹叉暟鎹�
+				userBoundRoles: [], // 鐢ㄦ埛宸茬粦瀹氱殑瑙掕壊ID鍒楄〃
+				HBillType: 4616,
+
 				hform: {
-					HDate: dayjs(new Date()).format('YYYY-MM-DD'),
-					HMaker: getUserInfo()['Czymc'],
 					HInterID: '',
-					HStockOrgName: uni.getStorageSync("Organization"),
-					HStockOrgID: uni.getStorageSync("OrganizationID"),
-
-					HQualityApproval: false,
-
-					HMainID: '',
-					HSubID: '',
-					HSourceBillSEQ: '',
 					HBillNo: '',
-					HEmpID: getUserInfo()['HEmpID'] || '',
-					HEmpName: getUserInfo()['Czymc'] || '',
-					HEmpNumber: getUserInfo()['Czybm'] || uni.getStorageSync("HEmpNumber"),
-
-
-					HCheckEmpName: '',
-
-					HRemark: '',
-
-					HProduceDate: dayjs(new Date()).format('YYYY-MM-DD'),
-
-					//鑷畾涔�
+					HDate: getDateTime.dateTimeStr('y-m-d'),
+					HBarCode: '',
+					HDeptName: uni.getStorageSync('HDeptName'),
+					HDeptID: uni.getStorageSync('HDeptID'),
+					HEmpName: uni.getStorageSync('HEmpName'),
+					HEmpID: uni.getStorageSync('HEmpID'),
+					HSourceID: uni.getStorageSync('HSourceID'),
+					HSourceName: uni.getStorageSync('HSourceName'),
+					HProcID: uni.getStorageSync('HProcID'),
+					HProcName: uni.getStorageSync('HProcName'),
+					HGroupID: uni.getStorageSync('HGroupID'),
+					HGroupName: uni.getStorageSync('HGroupName'),
+					HShiftsID: 0,
+					HShiftsName: '',
 					HMouldID: 0,
 					HMouldName: '',
 					HMouldNumber: '',
 					HMouldNo: '',
 					HMouldState: '',
 					HEquipID: 0,
+					HEquipNumber: '',
 					HEquipName: '',
-					HSourceID: uni.getStorageSync('HSourceID'),
-					HSourceName: uni.getStorageSync('HSourceName'),
-					HProcID: uni.getStorageSync('HProcID'),
-					HProcName:uni.getStorageSync('HProcName'),
-					HGroupID:uni.getStorageSync('HGroupID'),
-					HGroupName: uni.getStorageSync('HGroupName'),
-					HShiftsID: 0,
-					HShiftsName: '',
-					HDeptName: uni.getStorageSync('HDeptName'),
-					HDeptID: uni.getStorageSync('HDeptID'),
-					//HEmpID:0,
-					//HEmpName:'',
 					HSignInReason: '',
 					HSignRemark: '',
+					HMouldRelQty: 0,
+					HOrgID: uni.getStorageSync('OrganizationID'),
 
-					HMaterID: 0,
-					HMaterNumber: '',
-					HMaterName: '',
-					HMaterModel: '',
+					HMaker: '',
+					HMakeDate: '',
+					HUpDater: '',
+					HUpDateDate: '',
+					HChecker: '',
+					HCheckDate: '',
+					HCloseMan: '',
+					HCloseDate: '',
+					HDeleteMan: '',
+					HDeleteDate: '',
+
 					HRoles: [],
-				},
-				roleOptions: [],				
-				// 鍒嗛〉妯″潡鍏冩暟鎹�
-				paginationMeta: {
-
+					eventType: 'Add'
+				}
+			}
+		},
+		onLoad(e) {
+			this.HBarCodeFocus = true
+			this.getHDeptList()
+			this.getHEmpList()
+			this.getHSourceList()
+			this.getHGroupList()
+			this.getHShiftsList()
+			this.getHProcList()
+			//鍏堣幏鍙栬鑹插垪琛紝鐒跺悗鑾峰彇鐢ㄦ埛缁戝畾鐨勮鑹�
+			this.getRoleList().then(() => {
+				this.getUserBoundRoles();
+			});
+			this.hform.HMaker = uni.getStorageSync('HUserName')
+			console.log(e, this.userInfo)
+			if (e.linterid) {
+				this.btnType = 3
+				this.linterid = e.linterid
+				this.HBillNo = e.HBillNo
+			} else {
+				this.getNewData()
+			}
+			this.tabs = 0
+		},
+		// ==================== 璁$畻灞炴�� ====================
+		computed: {
+			// 璁$畻琛ㄦ牸楂樺害
+			listTableHeight: {
+				get() {
+					return this.bottomBtnTop - this.listTableTop - 10
 				}
 			}
 		},
 		methods: {
-			onCardCheckChange(item, index) {
-							item.checked = !item.checked;
-							if (item.checked) {
-								this.selectedRows.push(item);
-							} else {
-								const idx = this.selectedRows.findIndex(row => row.index === item.index);
-								if (idx > -1) {
-									this.selectedRows.splice(idx, 1);
-								}
-							}
-							console.log('褰撳墠閫変腑鐨勮:', this.selectedRows);
-						},
-			onTableRowClickHandler(row, index) {
-				console.log('row: ', row);
-				if (!this.listData[index].checked) {
-					this.$set(this.listData[index], 'checked', true)
-				} else {
-					this.listData[index].checked = !this.listData[index].checked
-				}
+			//鎵爜
+			toScanCode() {
+				var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
+				mpaasScanModule.mpaasScan({
+					'hideAlbum': true,
+					'timeoutInterval': '10', //瓒呮椂鏃堕棿
+					'timeoutText': '鏈瘑鍒埌浜岀淮鐮�' //瓒呮椂鎻愰啋            
+				}, (ret) => {
+					console.log(ret.resp_result)
+					this.hform.HBarCode = ret.resp_result
+					this.getHBarCodeData(ret.resp_result)
+				})
 			},
-			async HBarCodeFocusRefresh() {
-				this.HBarCode = ''
+			//鍏夋爣
+			async refreshBarCodeState() {
 				this.HBarCodeFocus = false
-				await this.$nextTick()
-				this.HBarCodeFocus = true
+				await this.$nextTick(() => {
+					this.HBarCodeFocus = true
+					this.hform.HBarCode = ""
+				})
 			},
-			async HBarCodePackFocusRefresh() {
-				this.HBarCode_Pack = ''
-				this.HBarCodePackFocus = false
-				await this.$nextTick()
-				this.HBarCodePackFocus = true
+			// 娣诲姞涓�涓噸鏂拌仛鐒︾殑鏂规硶
+			reFocusBarCode() {
+				this.HBarCodeFocus = false;
+				this.$nextTick(() => {
+					this.HBarCodeFocus = true;
+				});
 			},
-			//#region 涓嬫媺妗�
-			//鑾峰彇浣跨敤閮ㄩ棬鏁版嵁
-			async getHDeptList() {
-				try{
-					let res = await CommonUtils.doRequest2Async({
-						url: '/PublicPageMethod/DeptList',
-						data: {
-							sWhere: "where HStopFlag=0 and HEndFlag=1 and HUSEORGID = " + uni.getStorageSync(
-								'OrganizationID') + ""
-						},
-					})
-					
-					console.log('res: ', res);
-					if (res.data.count == 1) {
-						console.log('res.data.data: ', res.data.data);
-						this.HDeptNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
-						this.arrayHDeptName = res.data.data.map(item => item.HName)
-						this.$forceUpdate();
-					} else {
+			//鏃ユ湡
+			HDateChange(e) {
+				console.log(e.detail.value)
+				this.hform.HDate = e.detail.value
+			},
+			getHBarCodeData(HBarCode) {
+				uni.request({
+					url: this.serverUrl + '/Sc_EmployeeSignInNoteBillController/txtHBarCode_KeyDown',
+					data: {
+						HBarCode: this.hform.HBarCode
+					},
+					success: (res) => {
+						if (res.data.code == 1) {
+							var data = res.data.data[0];
+							this.hform.HEquipID = data.HInterID
+							this.hform.HEquipNumber = data.璁惧浠g爜
+							this.hform.HEquipName = data.璁惧鍚嶇О
+							this.hform.HSourceID = data.HSourceID
+							this.hform.HSourceName = data.鐢熶骇璧勬簮鍚嶇О
+							this.getHMouldList()
+							this.getHIcmoList()
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
 						uni.showToast({
-							title: res.data.Message,
+							title: '鎺ュ彛璇锋眰澶辫触',
 							icon: 'none'
 						})
-					}
-				}catch(err) {
-					uni.showToast({
-						title: err,
-						icon: 'none'
-					})
-				}
-				
+					},
+				});
+			},
+			//鑾峰彇妯″叿淇℃伅
+			getHMouldList() {
+				uni.request({
+					url: this.serverUrl + '/Sc_EmployeeSignInNoteBillController/Get_HMouldList',
+					data: {
+						HInterID: this.hform.HEquipID,
+						UserNmae: uni.getStorageSync('Czybm'),
+					},
+					success: (res) => {
+						if (res.data.code == 1) {
+							var data = res.data.data[0];
+							this.hform.HMouldID = data.妯″叿id
+							this.hform.HMouldNo = data.妯″叿缂栫爜
+							this.hform.HMouldName = data.妯″叿鍚嶇О
+							this.hform.HMouldState = data.妯″叿鐘舵��
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//鑾峰彇鐢熶骇宸ュ崟
+			getHIcmoList() {
+				uni.request({
+					url: this.serverUrl + '/Sc_EmployeeSignInNoteBillController/Get_HIcmoList',
+					data: {
+						HInterID: this.hform.HSourceID,
+						UserNmae: uni.getStorageSync('Czybm'),
+					},
+					success: (res) => {
+						if (res.data.code == 1) {
+							var data = res.data.data;
+							console.log(data)
+							for (let i = 0; i < data.length; i++) {
+								this.listData.push(Object.assign(data[i], {
+									index: i
+								}))
+							}
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//鑾峰彇浣跨敤閮ㄩ棬鏁版嵁
+			getHDeptList() {
+				uni.request({
+					url: this.serverUrl + '/PublicPageMethod/DeptList',
+					data: {
+						sWhere: "where HStopFlag=0 and HEndFlag=1 and HUSEORGID = " + uni.getStorageSync(
+							'OrganizationID') + ""
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.HDeptNameList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHDeptName[i] = res.data.data[i].HName
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
 			},
 			//閫夋嫨浣跨敤閮ㄩ棬
 			HDeptNameChange(e) {
@@ -546,38 +525,35 @@
 				}
 			},
 			//鎿嶄綔鍛樸�佽礋璐d汉
-			async getHEmpList() {
-				try{
-					let res = await CommonUtils.doRequest2Async({
-						url: '/Web/GetEmployeeList_Json',
-						data: {
-							Employee: '',
-							HGroupID: 0
-						},
-					})
-					
-					console.log('res: ', res);
-					if (res.data.count == 1) {
-						console.log('res.data.data: ', res.data.data);
-						this.HEmpNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
-						this.arrayHEmpName = res.data.data.map(item => item.HName)
-						this.$forceUpdate();
-					} else {
+			getHEmpList() {
+				uni.request({
+					url: this.serverUrl + '/Web/GetEmployeeList_Json',
+					data: {
+						Employee: '',
+						HGroupID: 0
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.HEmpNameList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHEmpName[i] = res.data.data[i].HName
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
 						uni.showToast({
-							title: res.data.Message,
+							title: '鎺ュ彛璇锋眰澶辫触',
 							icon: 'none'
 						})
-					}
-				}catch(err) {
-					uni.showToast({
-						title: err,
-						icon: 'none'
-					})
-				}
-				
+					},
+				});
 			},
 			//閫夋嫨鎿嶄綔鍛�
 			HEmpNameChange(e) {
@@ -587,10 +563,47 @@
 					}
 				}
 			},
-			
+			//鐢熶骇璧勬簮
+			getHSourceList() {
+				uni.request({
+					url: this.serverUrl + '/api/newBill/getSourceList',
+					data: {
+						sWhere: " and HUSEORGID = " + uni.getStorageSync('OrganizationID') + ""
+					},
+					success: (res) => {
+						if (res.data.code == 1) {
+							this.HSourceNameList = res.data.data.Gy_Source
+							for (var i = 0; i < res.data.data.Gy_Source.length; i++) {
+								this.arrayHSourceName[i] = res.data.data.Gy_Source[i].鐢熶骇璧勬簮
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨鐢熶骇璧勬簮
+			HSourceNameChange(e) {
+				for (var i = 0; i < this.HSourceNameList.length; i++) {
+					if (this.HSourceNameList[i].鐢熶骇璧勬簮 == e) {
+						this.hform.HSourceID = this.HSourceNameList[i].HItemID
+					}
+				}
+			},
 			//鐝粍
 			async getHGroupList() {
-				try{
+				try {
 					let res = await CommonUtils.doRequest2Async({
 						url: '/Gy_Group/list',
 						data: {
@@ -598,14 +611,11 @@
 							user: getUserInfo()['Czymc'] || '',
 						},
 					})
-					
+
 					console.log('res: ', res);
 					if (res.data.count > 0) {
 						console.log('res.data.data: ', res.data.data);
 						this.HGroupNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
 						this.arrayHGroupName = res.data.data.map(item => item.鐝粍鍚嶇О)
 						this.$forceUpdate();
 					} else {
@@ -614,13 +624,13 @@
 							icon: 'none'
 						})
 					}
-				}catch(err) {
+				} catch (err) {
 					uni.showToast({
 						title: err,
 						icon: 'none'
 					})
 				}
-				
+
 			},
 			//閫夋嫨鐝粍
 			HGroupNameChange(e) {
@@ -630,9 +640,9 @@
 					}
 				}
 			},
-			//鐝璫i
+			//鐝
 			async getHShiftsList() {
-				try{
+				try {
 					let res = await CommonUtils.doRequest2Async({
 						url: '/Gy_ShiftsController/Get_Gy_WorkShiftList',
 						data: {
@@ -640,14 +650,11 @@
 							HMaker: getUserInfo()['Czymc'] || '',
 						},
 					})
-					
+
 					console.log('res: ', res);
 					if (res.data.count > 0) {
 						console.log('res.data.data: ', res.data.data);
 						this.HShiftsNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
 						this.arrayHShiftsName = res.data.data.map(item => item.鐝鍚嶇О)
 						this.$forceUpdate();
 					} else {
@@ -656,15 +663,15 @@
 							icon: 'none'
 						})
 					}
-				}catch(err) {
+				} catch (err) {
 					uni.showToast({
 						title: err,
 						icon: 'none'
 					})
 				}
-				
+
 			},
-			//閫夋嫨鐝璫i
+			//閫夋嫨鐝
 			HShiftsNameChange(e) {
 				for (var i = 0; i < this.HSourceNameList.length; i++) {
 					if (this.HSourceNameList[i].鐝鍚嶇О == e) {
@@ -672,52 +679,9 @@
 					}
 				}
 			},
-			//鐢熶骇璧勬簮
-			async getHSourceList() {
-				try{
-					let res = await CommonUtils.doRequest2Async({
-						url: '/Gy_Source/list',
-						data: {
-							sWhere: '',
-							user: getUserInfo()['Czymc'] || '',
-						},
-					})
-					
-					console.log('鐢熶骇璧勬簮res: ', res);
-					if (res.data.count > 0) {
-						console.log('鐢熶骇璧勬簮res.data.data: ', res.data.data);
-						this.HSourceNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
-						this.arrayHSourceName = res.data.data.map(item => item.鐢熶骇璧勬簮鍚嶇О)
-						this.$forceUpdate();
-					} else {
-						uni.showToast({
-							title: res.data.Message,
-							icon: 'none'
-						})
-					}
-				}catch(err) {
-					uni.showToast({
-						title: err,
-						icon: 'none'
-					})
-				}
-				
-			},
-			//閫夋嫨shengcanziyuan
-			HSourceNameChange(e) {
-				for (var i = 0; i < this.HSourceNameList.length; i++) {
-					if (this.HSourceNameList[i].鐢熶骇璧勬簮鍚嶇О == e) {
-						this.hform.HSourceID = this.HSourceNameList[i].HItemID
-						console.log("HSourceID涓�",this.hform.HSourceID)
-					}
-				}
-			},	
 			//宸ュ簭
 			async getHProcList() {
-				try{
+				try {
 					let res = await CommonUtils.doRequest2Async({
 						url: '/Gy_Process/list',
 						data: {
@@ -725,14 +689,11 @@
 							user: getUserInfo()['Czymc'] || '',
 						},
 					})
-					
+
 					console.log('宸ュ簭res: ', res);
 					if (res.data.count > 0) {
 						console.log('宸ュ簭res.data.data: ', res.data.data);
 						this.HProcNameList = res.data.data
-						// for (var i = 0; i < res.data.data.length; i++) {
-						// 	this.arrayHDeptName[i] = res.data.data[i].HName
-						// }
 						this.arrayHProcName = res.data.data.map(item => item.宸ュ簭鍚嶇О)
 						this.$forceUpdate();
 					} else {
@@ -741,13 +702,13 @@
 							icon: 'none'
 						})
 					}
-				}catch(err) {
+				} catch (err) {
 					uni.showToast({
 						title: err,
 						icon: 'none'
 					})
 				}
-				
+
 			},
 			//閫夋嫨Proc
 			HProcNameChange(e) {
@@ -756,687 +717,316 @@
 						this.hform.HProcID = this.HProcNameList[i].HItemID
 					}
 				}
-			},	
-			
-			
-			// 鑾峰彇瑙掕壊鍒楄〃
-			async getRoleList() {
-			  try {
-			    let res = await CommonUtils.doRequest2Async({
-			      url: '/Xt_UserGroup/list',
-			      data: {
-			        sWhere: '',
-			      },
-			    })
-			    
-			    console.log('瑙掕壊鍒楄〃res: ', res);
-			    if (res.data.count > 0) {
-			      console.log('瑙掕壊鍒楄〃res.data.data: ', res.data.data);
-			      // 灏嗘帴鍙h繑鍥炵殑鏁版嵁杞崲涓� uni-data-select 闇�瑕佺殑鏍煎紡
-			      this.roleOptions = res.data.data.map(item => {
-
-			        return {
-			          value: item.瑙掕壊 ,  
-			          text: item.瑙掕壊 
-			        };
-			      });
-			      this.$forceUpdate();
-			    } else {
-			      uni.showToast({
-			        title: res.data.Message || '鑾峰彇瑙掕壊鍒楄〃澶辫触',
-			        icon: 'none'
-			      });
-			      // 濡傛灉鎺ュ彛澶辫触锛屽彲浠ヨ缃粯璁ら�夐」
-			      this.roleOptions = [];
-			    }
-			  } catch(err) {
-			    uni.showToast({
-			      title: err.message || '鑾峰彇瑙掕壊鍒楄〃寮傚父',
-			      icon: 'none'
-			    });
-			    // 寮傚父鎯呭喌璁剧疆榛樿閫夐」
-			    this.roleOptions = [];
-			  }
 			},
-			//#endregion
-			
-			
-			toScanCode2() {
-				MpaasScan.scanCode((scanCode) => {
-					this.HBarCode = scanCode
-					GetMeesageByBarCode(scanCode)
-				})
-			},
-			GetMeesageByBarCode(HBarCode) {
-				let sBarCode = this.HBarCode
-				if (!sBarCode) {
-					return uni.showToast({
-						icon: 'none',
-						title: '鏉$爜涓嶈兘涓虹┖锛岃鎵弿鏉$爜锛�',
-					})
-				}
-				CommonUtils.doRequest2({
-					url: '/Sc_EmployeeSignInNoteBillController/Get_equipmentMes',
-					data: {
-						"HInterID": this.hform.HInterID,
-						"HBarCode": sBarCode,
-					},
-				
-					resFunction: (res) => {
-						let {
-							data,
-							count,
-							Message
-						} = res.data
-						if (count == 1) {
-							//let data=res.data
-							console.log(sBarCode)
-							console.log(res.data.data[0])
-							var moulddate=res.data.data[0]
-							this.hform.HMouldID = moulddate.妯″叿id
-							this.hform.HMouldNo = moulddate.妯″叿缂栫爜
-							this.hform.HMouldName = moulddate.妯″叿鍚嶇О
-							this.hform.HMouldState = moulddate.妯″叿鐘舵��
-							this.GetEquipmentMsg(this.HBarCode)
-							
-							
-					
-						} else {
-							this.GetEquipmentMsg(this.HBarCode)
-							CommonUtils.playSound(0)
-							this.listData = []
-							
-							this.HBarCodeFocusRefresh()
-							uni.showToast({
-								icon: 'none',
-								title: "妯″叿涓虹┖"
-							})
-						}
+			// 鑾峰彇鐢ㄦ埛宸茬粦瀹氱殑瑙掕壊
+			async getUserBoundRoles() {
+				try {
+					// 纭繚瑙掕壊鍒楄〃宸插姞杞�
+					if (!this.roleList || this.roleList.length === 0) {
+						console.log('瑙掕壊鍒楄〃鏈姞杞斤紝鍏堝姞杞借鑹插垪琛�');
+						await this.getRoleList();
 					}
-				})
-			},
-			GetEquipmentMsg(HBarCode)
-			{
-				CommonUtils.doRequest2({
-					url: '/Sc_EmployeeSignInNoteBillController/APP_Edit_json',
-					data: {
-						"HInterID": this.hform.HInterID,
-						"HBarCode": HBarCode,
-					},
-				
-					resFunction: (res) => {
-						let {
-							data,
-							count,
-							Message
-						} = res.data
-						if (count == 1) {
-							//let data=res.data
-							//console.log(sBarCode)
-							console.log(res.data.data[0])
-							var tabledata=res.data.data[0]
-							this.hform.HEquipID = tabledata[0].璁惧鍐呯爜
-							this.hform.HEquipName = tabledata[0].璁惧鍚嶇О
-							this.listData = []
+					let res = await CommonUtils.doRequest2Async({
+						url: '/Xt_UserGroup/UserGroupInfoList',
+						data: {
+							sWhere: ' and userid = '+getUserInfo()['Czybm']+''
+						},
+					});
 
-							if (data[1].length > 0) {
-								this.hform.HMaterID = data[1].HMaterID
-								for (let i = 0; i < data[1].length; i++) {
-									this.listData.push(Object.assign(data[1][i], {
-										index: i
-									}))
-								}
+					if (res.data.count > 0) {
+
+						// 鎻愬彇瑙掕壊ID
+						const boundRoleIds = res.data.data.map(item => item.GroupId);
+						this.userBoundRoles = boundRoleIds;
+
+						// 灏嗚鑹睮D杞崲涓鸿鑹插悕绉�
+						const boundRoleNames = [];
+						for (const roleId of boundRoleIds) {
+							// 鍦ㄨ鑹插垪琛ㄤ腑鏌ユ壘瀵瑰簲鐨勮鑹�
+							const roleItem = this.roleList.find(r => r.HGroupID == roleId);
+							if (roleItem && roleItem.瑙掕壊) {
+								boundRoleNames.push(roleItem.瑙掕壊);
 							}
-					
-						} else {
-							CommonUtils.playSound(0)
-							this.listData = []
-							
-							this.HBarCodeFocusRefresh()
-							uni.showToast({
-								icon: 'none',
-								title: "宸ュ崟淇℃伅鍜岃澶囦俊鎭负绌�"
-							})
 						}
+
+						console.log('鐢ㄦ埛缁戝畾瑙掕壊鍚嶇О: ', boundRoleNames);
+
+						// 濡傛灉鏄柊澧炴ā寮忥紝璁剧疆榛樿閫変腑鐨勮鑹�
+						if (this.btnType == 1) {
+							this.hform.HRoles = boundRoleNames;
+							console.log('宸茶缃粯璁よ鑹�: ', this.hform.HRoles);
+						}
+
+						this.$forceUpdate();
+					} else {
+						// 濡傛灉娌℃湁缁戝畾瑙掕壊锛屾竻绌洪�夋嫨
+						if (this.btnType == 1) {
+							this.hform.HRoles = [];
+						}
+						console.log('鐢ㄦ埛鏈粦瀹氫换浣曡鑹�');
 					}
-				})
-				
-			},
-			onRoleChange(e) {
-				console.log('閫変腑鐨勮鑹�:', this.hform.HRoles);
+				} catch (err) {
+					console.error('鑾峰彇鐢ㄦ埛缁戝畾瑙掕壊澶辫触:', err);
+					uni.showToast({
+						title: err.message || '鑾峰彇鐢ㄦ埛瑙掕壊澶辫触',
+						icon: 'none'
+					});
+				}
 			},
 
+			// 鑾峰彇瑙掕壊淇℃伅
+			async getRoleList() {
+				try {
+					let res = await CommonUtils.doRequest2Async({
+						url: '/Xt_UserGroup/list',
+						data: {
+							sWhere: '',
+						},
+					});
+					if (res.data.count > 0) {
+						console.log('瑙掕壊鍒楄〃res.data.data: ', res.data.data);
 
-			handleSelect(selected, array) {
-				this.selectedRows = array
+						// 淇濆瓨鍘熷瑙掕壊鍒楄〃锛屽寘鍚鑹睮D
+						this.roleList = res.data.data;
+
+						// 鐢熸垚涓嬫媺妗嗛�夐」
+						this.roleOptions = res.data.data.map(item => {
+							return {
+								value: item.瑙掕壊,
+								text: item.瑙掕壊
+							};
+						});
+
+						// 鏇存柊瑙嗗浘
+						this.$forceUpdate();
+
+						// 杩斿洖Promise浠ヤ究閾惧紡璋冪敤
+						return Promise.resolve();
+					} else {
+						uni.showToast({
+							title: res.data.Message || '鑾峰彇瑙掕壊鍒楄〃澶辫触',
+							icon: 'none'
+						});
+
+						// 璁剧疆绌烘暟缁�
+						this.roleList = [];
+						this.roleOptions = [];
+
+						// 杩斿洖Promise浠ヤ究閾惧紡璋冪敤
+						return Promise.reject('鑾峰彇瑙掕壊鍒楄〃澶辫触');
+					}
+				} catch (err) {
+					uni.showToast({
+						title: err.message || '鑾峰彇瑙掕壊鍒楄〃寮傚父',
+						icon: 'none'
+					});
+
+					// 璁剧疆绌烘暟缁�
+					this.roleList = [];
+					this.roleOptions = [];
+
+					// 杩斿洖Promise浠ヤ究閾惧紡璋冪敤
+					return Promise.reject(err);
+				}
 			},
-			handleSelectAll(selected, array) {
-				this.selectedRows = array
-			},
-			getMaxNo() {
-				CommonUtils.doRequest2({
-					url: "/WEBSController/GetMaxBillNoAndID_Json",
+
+			//鏂板
+			getNewData() {
+				uni.request({
+					url: this.serverUrl + '/Web/GetMAXNum',
 					data: {
-						"HBillType": this.HBillType
+						HBillType: '4616'
 					},
-					resFunction: (d) => {
-						let {
-							count,
-							data,
-							Message
-						} = d.data
-						if (count == 1) {
-							this.hform.HInterID = data[0].HInterID;
-							this.hform.HBillNo = data[0].HBillNo
+					success: (res) => {
+						console.log(res.data)
+						if (res.data.count == 1) {
+							this.hform.HInterID = 0
+							this.hform.HBillNo = res.data.data[0].HBillNo
+							this.hform.HMakeDate = getDateTime.dateTimeStr('y-m-d')
+							this.btnType = 1
 						} else {
-
-							uni.showModal({
-								title: "娓╅Θ鎻愮ず",
-								showCancel: false,
-								content: Message
-
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
 							})
-
 						}
-					}
-				})
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
 			},
-			submitPreCheck() {
-				if (CommonUtils.isEmpty(this.hform.HInterID)) {
-					uni.showToast({
-						icon: 'none',
-						title: '鍗曟嵁鍐呯爜鑾峰彇澶辫触锛岄敊璇殑鍗曟嵁鍐呯爜锛�'
-					})
-					return false
+			submit() {
+				this.hform.HInterID = 0
+				for (let i = 0; i < this.hform.HRoles.length; i++) {
+					this.hform.HSignRemark = this.hform.HSignRemark + this.hform.HRoles[i] + ","
 				}
-				if (CommonUtils.isEmpty(this.hform.HBillNo)) {
-					uni.showToast({
-						icon: 'none',
-						title: '鍗曟嵁鍙疯幏鍙栧け璐ワ紝閿欒鐨勫崟鎹彿锛�'
-					})
-					return false
-				}
-				if (this.listData.length < 1) {
-					uni.showToast({
-						icon: 'none',
-						title: '娌℃湁鎵爜淇℃伅锛岃鍏堟壂鎻忔潯鐮侊紝纭鏃犺鍚庡啀鎻愪氦锛�'
-					})
-					return false
-				}
-				return true
-			},
-			cmdDelete() {
-				console.log('this.selectedRows: ', this.selectedRows);
-				if (this.selectedRows.length != 1) {
-					return uni.showToast({
-						icon: 'none',
-						title: '璇烽�夋嫨涓�琛岃褰曪紝杩涜鍒犻櫎锛�'
-					})
-				}
-				uni.showModal({
-					title: '鍒犻櫎纭',
-					content: '纭瑕佸垹闄ら�変腑琛屾墍鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠!',
-					success: () => {
-						if (confirm) {
-							CommonUtils.doRequest2({
-								url: '/WEBSController/set_DelPackUnionBill_Temp_Pack_Json',
-								data: {
-									HInterID: this.hform.HInterID,
-									HBillType: this.HBillType,
-									HBarCode: this.selectedRows[0].HBarCode
-								},
-								resFunction: (res) => {
-									let {
-										data,
-										count,
-										Message
-									} = res.data
-									if (count == 1) {
-										CommonUtils.playSound(1)
-										uni.showToast({
-											icon: 'none',
-											title: Message
+				let oMain = JSON.stringify(this.hform);
+				console.log("鎻愪氦鐨刯son", oMain)
+
+				let sMainSub = oMain + ';' + getUserInfo()['OrganizationID'] + ';' + getUserInfo()['Czymc'];
+				CommonUtils.doRequest2({
+					url: "/Sc_EmployeeSignInNoteBillController/SaveBill_APP",
+					data: {
+						"msg": sMainSub
+					},
+					method: "POST",
+					resFunction: (res) => {
+						let {
+							data,
+							count,
+							Message
+						} = res.data
+						if (count == 1) {
+							uni.showModal({
+								title: '鎻愮ず',
+								content: res.data.Message + ' 鏄惁缁х画鏂板锛�',
+								success: (res) => {
+									if (res.confirm) {
+										console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+										uni.redirectTo({
+											url: '/pages/EmployeeRecords/EmployeeRecordsBill'
 										})
-										//this.DisBillEntryList()
-									} else {
-										CommonUtils.playSound(0)
-										uni.showToast({
-											icon: 'none',
-											title: Message
-										})
+									} else if (res.cancel) {
+										console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+										setTimeout(() => {
+											uni.navigateBack();
+										}, 50)
 									}
 								}
-							})
-						}
-					}
-				})
-			},
-
-			async cmdSubmit() {
-				let checkRes = this.submitPreCheck()
-				if (!checkRes) {
-					return
-				}
-				this.EnableSubmit = false
-
-				try {
-					debugger
-					this.hform.HInterID = 0
-					for (let i = 0; i < this.hform.HRoles.length; i++) {
-						this.hform.HSignRemark = this.hform.HSignRemark + this.hform.HRoles[i] + ","
-					}
-					let oMain = JSON.stringify(this.hform);
-					console.log("鎻愪氦鐨刯son", oMain)
-					// this.HBillSub[0].HRepairCheckID = this.hform.HRepairCheckMainID
-					// this.HBillSub[0].HManagerID = this.hform.HManagerID
-					// this.HBillSub[0].HRepairCheckContent = this.hform.HRepairCheckMainContent
-					// let sSubStr = JSON.stringify(this.HBillSub);
-					let sMainSub = oMain + ';' + getUserInfo()['OrganizationID'] + ';' + getUserInfo()['Czymc'];
-					await CommonUtils.doRequest2({
-						url: "/Sc_EmployeeSignInNoteBillController/SaveBill_APP",
-						data: {
-							"msg": sMainSub
-						},
-						method: "POST",
-						resFunction: async (res) => {
-							let {
-								data,
-								count,
-								Message
-							} = res.data
-							if (count == 1) {
-								uni.showModal({
-								    title: '鎻愮ず',
-								    content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵',
-								    success: (res) => {
-								        if (res.confirm) {
-								            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
-								            uni.redirectTo({
-								                url: '/pages/EmployeeRecords/EmployeeRecordsBill'
-								            })
-								        } else if (res.cancel) {
-								            console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
-								            // setTimeout(() => {
-								            // 	uni.navigateBack();
-								            // }, 50)
-								        }
-								    }
-								});
-								// 绛夊緟鏁版嵁鑾峰彇瀹屾垚鍚庡啀鏄剧ず琛ㄦ牸
-								//await this.getResultTableData();
-							} else {
-								uni.showToast({
-									icon: 'none',
-									title: Message
-								})
-								this.EnableSubmit = true;
-							}
-						}
-					})
-				} catch (error) {
-					console.error('鎻愪氦澶辫触:', error);
-					this.EnableSubmit = true;
-				}
-			},
-			getResultTableData() {
-				CommonUtils.doRequest2({
-					url: '/Sc_EmployeeSignInNoteBillController/GetListPage',
-					data: {
-						"sWhere": 'and HEquipID=' + this.hform.HEquipID,
-						"user": 'admin'
-					},
-					resFunction: (res) => {
-						console.log('缁撴灉鎺ュ彛杩斿洖:', res);
-						let {
-							data,
-							count,
-							Message
-						} = res.data
-						if (count == 1) {
-							console.log('鑾峰彇鍒扮粨鏋滄暟鎹�:', data);
-							this.resultTableData = data;
-							this.showResultTable = true; // 鏄剧ず缁撴灉琛ㄦ牸
-							console.log('showResultTable 璁剧疆涓�:', this.showResultTable);
+							});
 						} else {
 							uni.showToast({
 								icon: 'none',
-								title: Message || '鑾峰彇鏁版嵁澶辫触'
+								title: Message
 							})
 							this.EnableSubmit = true;
 						}
 					}
 				})
 			},
-			// 鏂板鏂规硶
-			toAddNew() {
-				// 閲嶇疆鏁版嵁锛屽噯澶囨柊澧�
-				this.showResultTable = false;
-				this.EnableSubmit = true;
-				this.resultTableData = [];
-				this.HBarCode_Pack = '';
-				this.HBarCode = '';
-				this.listData = [];
-				this.getMaxNo(); // 閲嶆柊鑾峰彇鏂扮殑鍗曟嵁鍙�
-				this.HBarCodePackFocusRefresh(); // 閲嶆柊鑱氱劍
-			},
-
-			// 鍏抽棴缁撴灉琛ㄦ牸
-			closeResultTable() {
-				this.showResultTable = false;
-				uni.navigateBack();
-			},
-			cmdExit() {
-				uni.navigateBack()
-			},
-			//鎵撳嵃妯″潡鍑芥暟
-			/**
-			 * 鎵撳嵃鍑芥暟
-			 */
-			async search() {
-				// #ifndef APP-PLUS
+			goBack() {
 				uni.showModal({
-					content: "涓嶆敮鎸佽摑鐗欐墦鍗板姛鑳斤紝璇峰垏鎹㈢Щ鍔ㄨ澶�...",
-				})
-				return
-				// #endif
-				if (this.$printer.isConnected() === false) {
-					this.$refs.labelPrinter.openPopup()
-				} else {
-					let printContent = []
-					let printInfoBuffer = []
-					let count = 0
-					uni.showLoading()
-					console.log('this.listData: ', this.printListData);
-					for (let listOne of this.printListData) {
-						let Message = await this.getPrintTemplate(listOne.HInterID, listOne.HItemID)
-						printContent.push(Message)
-						count++;
-						if (count == 10) {
-							printInfoBuffer.push(printContent.join("\r\n"))
-							count = 0
-							printContent = []
+					title: '鎻愮ず',
+					content: '纭瑕侀��鍑哄綋鍓嶉〉闈㈠悧锛�',
+					success: (res) => {
+						if (res.confirm) {
+							console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+							uni.navigateBack()
+						} else if (res.cancel) {
+							console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
 						}
 					}
-					uni.hideLoading()
-					printInfoBuffer.push(printContent.join("\r\n"))
-					this.printInfo = JSON.stringify(printInfoBuffer)
-					printInfoBuffer = []
-
-					await this.$nextTick(() => {
-						this.$refs.labelPrinter.execPrint()
-					})
-				}
-			},
-			/** 鑾峰彇鎵撳嵃妯℃澘
-			 * @param {Object} HInterID
-			 * @param {Object} HItemID
-			 */
-			async getPrintTemplate(HInterID, HItemID) {
-				console.log('data: ', {
-					HOrginationName: uni.getStorageSync("Organization"),
-					HBillSubType: this.HBillType,
-					HInterID: HInterID,
-					HItemID: HItemID,
-				})
-				return new Promise((resolve, reject) => {
-					CommonUtils.doRequest2({
-						url: "/Sc_BarCode/Get_BarCodePrintCode_CPCL",
-						data: {
-							HOrginationName: uni.getStorageSync("Organization"),
-							HBillSubType: this.HBillType,
-							HInterID: HInterID,
-							HItemID: HItemID,
-						},
-						resFunction: (res) => {
-							let {
-								Message,
-								count
-							} = res.data
-							if (count == 1) {
-								console.log('Message: ', Message);
-								resolve(Message)
-							} else {
-								uni.showToast({
-									icon: 'none',
-									title: Message
-								})
-								reject();
-							}
-						},
-						errFunction: (err) => {
-							reject();
-						},
-
-					})
-				})
-			},
-			/**
-			 * 鏌ユ壘鎵撳嵃鏈�
-			 */
-			async searchLabelPrinter() {
-				// 鏌ユ壘鎵撳嵃鏈�
-				var that = this
-				// 浣跨敤openBluetoothAdapter 鎺ュ彛锛屽厤鍘讳富鍔ㄧ敵璇锋潈闄愮殑楹荤儲
-				uni.openBluetoothAdapter({
-					success: async (res) => {
-						await this.checkPermission();
-						console.log('start discovery devices');
-						this.discoveredDevices = [];
-						console.log(res)
-						bluetoothTool.discoveryNewDevice();
-						this.maskShow = true
-					},
-					fail: async (e) => {
-						console.error(e)
-						switch (e.code) {
-							case "10009":
-								this.showToast("姝よ澶囦笉鏀寔璁惧鎼滅储鍔熻兘!");
-								break;
-							default:
-								console.error(e);
-						}
-					}
-				})
-
-			},
-			onDevice(device) {
-				console.log("鐩戝惉瀵绘壘鍒版柊璁惧鐨勪簨浠�---------------")
-				console.log(device)
-				if (typeof device === 'undefined') return;
-				if (typeof device.name === 'undefined') return;
-				console.log(device.name);
-				if (device.name === '') return;
-				if (device.name === null) return;
-				if (device.name.toUpperCase().endsWith('_BLE') ||
-					device.name.toUpperCase().endsWith('-LE') ||
-					device.name.toUpperCase().endsWith('-BLE')) return;
-				const isDuplicate = this.discoveredDevices.find(item => item.address === device.address);
-				if (isDuplicate) return;
-				this.discoveredDevices.push(device);
-			},
-			connectBT(device) {
-				const vm = this;
-				uni.showLoading({
-					title: '杩炴帴涓�'
 				});
-				bluetoothTool.connDevice(device.address, (result) => {
-					console.log(result)
-					uni.hideLoading()
-					if (result) {
-						// 	// console.log(result);
-						bluetoothTool.cancelDiscovery();
-						// console.log(vm.$printer)
-						vm.$printer.init(new FakeConnectedDevice());
-						vm.connectedDeviceId = device.address;
-						uni.showToast({
-							icon: 'none',
-							title: '杩炴帴鎴愬姛'
-						})
-						this.maskShow = false
-					} else {
-						uni.showToast({
-							icon: 'none',
-							title: '杩炴帴澶辫触'
-						})
-					}
-				});
-			},
-			stopSearchBT() {
-				console.log("鍋滄鎼滃闄勮繎鐨勮摑鐗欏鍥磋澶�---------------")
-				bluetoothTool.cancelDiscovery();
-			},
-			closeBluetooth() {
-				console.log("鍋滄钃濈墮杩炴帴")
-				const vm = this;
-				if (vm.connectedDeviceId != '') {
-					bluetoothTool.closeBtSocket();
-					vm.connectedDeviceId = "";
-				}
-			},
-
-		},
-		computed: {
-			listTableHeight: {
-				get() {
-					return this.bottomBtnTop - this.listTableTop - 10
-				}
 			}
-		},
-		async onReady() {
-			// #ifndef MP-WEIXIN
-			let query = uni.createSelectorQuery().in(this)
-			query.select("#bottom-btn")
-				.boundingClientRect((data) => {
-					if (data) {
-						this.bottomBtnTop = data.top
-					} else {
-						console.log("鏈壘鍒�#bottom-btn鑺傜偣");
-					}
-				})
-				.exec();
-			query.select("#list-table")
-				.boundingClientRect((data) => {
-					if (data) {
-						this.listTableTop = data.top
-					} else {
-						console.log("鏈壘鍒�#list-table鑺傜偣");
-					}
-				})
-				.exec();
-			// #endif
-		},
-		onLoad(e) {
-			// 1涓� 瑁呯 2涓� 缁勬墭
-			this.BarCodeType = e.BarCodeType || 1
-			this.OperationType = e.OperationType || 1
-
-			this.getHDeptList()
-			this.getHEmpList()
-			this.getHGroupList()
-			this.getHShiftsList()
-			this.getHSourceList()
-			this.getHProcList()
-			this.getRoleList()
-			if (this.OperationType == 1) {
-				this.getMaxNo()
-			} else if (this.OperationType == 2) {
-				// this.GetMeesageByBarCode_Pack(this.HBarCode_Pack)
-				//this.DisBillEntryList()
-				this.tabs = 0
-			}
-
-
-			// 鍏夋爣榛樿鑱氱劍鍦ㄦ墭鏉$爜涓�
-			this.HBarCodePackFocusRefresh()
 		}
 	}
 </script>
 
-<style lang="scss">
-	input {
-		width: inherit;
-		padding: 8rpx 20rpx;
-		font-size: 30rpx;
+<style lang="scss" scoped>
+	.form {
+		width: 668rpx;
+		margin: 20rpx auto;
+		padding-bottom: 240rpx;
 	}
 
-	.uni-mask {
-		position: fixed;
-		top: 0;
-		left: 0;
-		bottom: 0;
-		z-index: 3;
+	.tab_area {
+		width: 100%;
+		height: 50rpx;
+	}
+
+	.other {
+		margin-top: 8rpx;
+		text-align: center;
+		font-size: 28rpx;
+		padding: 4rpx 18rpx;
+		color: #1890FF;
+	}
+
+	.form-item {
 		display: flex;
 		align-items: center;
-		width: 100%;
-		background: rgba(0, 0, 0, 0.6);
-		padding: 0 30rpx;
-		box-sizing: border-box;
+		font-size: 30rpx;
+		padding: 6rpx 0;
+
+		.title {
+			width: 208rpx;
+
+			text {
+				color: red;
+				font-weight: bold;
+			}
+		}
+
+		.right {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+
+		.righton {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+
+		input {
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		textarea {
+			width: 98%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
 	}
 
-	.form {
-		display: flex;
-		flex-direction: column;
-		gap: 20rpx;
+	.bottom-btn {
+		width: 100%;
+		// height: 120rpx;
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		background-color: #fff;
+		box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+		padding: 30rpx 40rpx 40rpx 40rpx;
 
-		.form-base-info {
-			display: flex;
-			flex-direction: column;
-			gap: 10rpx;
-			box-sizing: border-box;
-			padding: 30rpx;
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
 		}
 
-		.bill-info {
-			display: flex;
-			flex-direction: column;
-			gap: 10rpx;
-			box-sizing: border-box;
-			padding: 16rpx 30rpx;
-			background-color: #fff;
+		.btn-a {
+			background-color: #3A78FF;
+			color: #fff;
 		}
 
-		.form-item {
-			display: flex;
-			align-items: center;
-			font-size: 30rpx;
-			padding: 6rpx 0;
+		.btn-b {
+			background-color: #41a863;
+			color: #fff;
+		}
 
-			.title {
-				width: 208rpx;
+		.btn-c {
+			background-color: #FFA500;
+			color: #fff;
+			position: absolute;
+			right: 120rpx;
+		}
 
-				text {
-					color: red;
-					font-weight: bold;
-				}
-			}
-
-			.right {
-				flex: 1;
-				border-radius: 22rpx;
-				border: 1px solid #acacac;
-			}
-
-			.righton {
-				width: 450rpx;
-				border-radius: 22rpx;
-				border: 1px solid #e4e4e4;
-				background-color: #e4e4e4;
-			}
-
-			input {
-				// width: 100%;
-				padding: 8rpx 20rpx;
-				font-size: 30rpx;
-			}
-
-
-
-			textarea {
-				width: 98%;
-				padding: 8rpx 20rpx;
-				font-size: 30rpx;
-			}
-
+		.btn-d {
+			background-color: #ff8901;
+			color: #fff;
 		}
 	}
 
@@ -1460,224 +1050,4 @@
 			border-bottom: 3px solid #3a78ff;
 		}
 	}
-
-	.machine-info-container {
-		padding-left: 40rpx;
-		/* 鍚戝彸绉诲姩40rpx */
-		padding-right: 40rpx;
-		padding-top: 20rpx;
-
-		.form-item {
-			display: flex;
-			align-items: center;
-			font-size: 30rpx;
-			padding: 10rpx 0;
-
-			.title {
-				width: 220rpx;
-				/* 绋嶅井鍔犲鏍囬瀹藉害 */
-				min-width: 220rpx;
-				color: #333;
-			}
-
-			.righton {
-				flex: 1;
-				border-radius: 22rpx;
-				border: 1px solid #e4e4e4;
-				background-color: #f8f8f8;
-
-				input {
-					width: 100%;
-					padding: 12rpx 20rpx;
-					font-size: 30rpx;
-					color: #666;
-				}
-			}
-		}
-	}
-
-	.bottom-btn {
-		width: 100%;
-		box-sizing: border-box;
-		// height: 120rpx;
-		position: fixed;
-		bottom: 0;
-		left: 0;
-		background-color: #fff;
-		box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
-		padding: 30rpx 40rpx 40rpx 40rpx;
-		display: flex;
-		flex-direction: row;
-		gap: 10rpx;
-
-		button {
-			border-radius: 50rpx;
-			width: 180rpx;
-			height: 66rpx;
-			line-height: 66rpx;
-			font-size: 28rpx;
-		}
-
-		.btn-a {
-			background-color: #3A78FF;
-			color: #fff;
-		}
-
-		.btn-b {
-			background-color: #41a863;
-			color: #fff;
-		}
-
-		.btn-c {
-			background-color: #acacac;
-			color: #fff;
-			// position: absolute;
-			// right: 120rpx;
-		}
-
-		.btn-d {
-			background-color: #ff8901;
-			color: #fff;
-		}
-	}
-
-	.result-modal {
-		position: fixed;
-		top: 0;
-		left: 0;
-		width: 100%;
-		height: 100%;
-		z-index: 2;
-
-		.modal-mask {
-			position: absolute;
-			top: 0;
-			left: 0;
-			width: 100%;
-			height: 100%;
-			background: rgba(0, 0, 0, 0.5);
-		}
-
-		.modal-content {
-			position: absolute;
-			top: 50%;
-			left: 50%;
-			transform: translate(-50%, -50%);
-			width: 90%;
-			max-width: 700rpx;
-			background: #fff;
-			border-radius: 20rpx;
-			overflow: hidden;
-
-			.modal-header {
-				padding: 30rpx;
-				border-bottom: 1px solid #eee;
-				display: flex;
-				justify-content: space-between;
-				align-items: center;
-
-				.modal-title {
-					font-size: 32rpx;
-					font-weight: bold;
-				}
-			}
-
-			.modal-body {
-				padding: 30rpx;
-				max-height: 60vh;
-				overflow-y: auto;
-			}
-
-			.modal-footer {
-				padding: 30rpx;
-				border-top: 1px solid #eee;
-				display: flex;
-				align-items: center;
-			}
-		}
-	}
-	.work-order-cards {
-			padding: 30rpx;
-			display: flex;
-			flex-direction: column;
-			gap: 20rpx;
-			
-			.work-order-card {
-				background: #fff;
-				border-radius: 16rpx;
-				padding: 24rpx;
-				box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08);
-				border: 1px solid #e8e8e8;
-				
-				.card-header {
-					display: flex;
-					justify-content: space-between;
-					align-items: center;
-					padding-bottom: 20rpx;
-					border-bottom: 1px solid #f0f0f0;
-					margin-bottom: 20rpx;
-					
-					.card-title {
-						font-size: 32rpx;
-						font-weight: bold;
-						color: #333;
-					}
-				}
-				
-				.card-content {
-					.card-row {
-						display: flex;
-						align-items: center;
-						padding: 12rpx 0;
-						border-bottom: 1px dashed #f5f5f5;
-						
-						&:last-child {
-							border-bottom: none;
-						}
-						
-						.card-label {
-							width: 160rpx;
-							font-size: 28rpx;
-							color: #666;
-							flex-shrink: 0;
-						}
-						
-						.card-value {
-							flex: 1;
-							font-size: 28rpx;
-							color: #333;
-							word-break: break-all;
-						}
-					}
-				}
-				
-				&:hover {
-					box-shadow: 0 4rpx 16rpx rgba(58, 120, 255, 0.15);
-					border-color: #3a78ff;
-				}
-			}
-			
-			.empty-card {
-				display: flex;
-				flex-direction: column;
-				align-items: center;
-				justify-content: center;
-				padding: 80rpx 30rpx;
-				background: #f8f9fa;
-				border-radius: 16rpx;
-				border: 2rpx dashed #dcdfe6;
-				
-				.empty-text {
-					font-size: 30rpx;
-					color: #999;
-					margin-top: 20rpx;
-					margin-bottom: 10rpx;
-				}
-				
-				.empty-tip {
-					font-size: 26rpx;
-					color: #ccc;
-				}
-			}
-		}
 </style>
\ No newline at end of file
diff --git a/pages/MJGL/shangmudan/MouldUpperBill.vue b/pages/MJGL/shangmudan/MouldUpperBill.vue
index 514dd2e..597c282 100644
--- a/pages/MJGL/shangmudan/MouldUpperBill.vue
+++ b/pages/MJGL/shangmudan/MouldUpperBill.vue
@@ -55,7 +55,7 @@
 					</view>
 				</view>
 				<view class="form-item">
-					<view class="title">鐢熶骇璧勬簮:</view>
+					<view class="title"><text>*</text>鐢熶骇璧勬簮:</view>
 					<view class="right">
 						<uni-combox :candidates="arrayHSourceName" placeholder="璇烽�夋嫨鐢熶骇璧勬簮" v-model="hform.HSourceName"
 							@input="HSourceNameChange"></uni-combox>
@@ -317,7 +317,7 @@
 				this.hform.HDate = e.detail.value
 			},
 			getHBarCodeData(HBarCode) {
-				if (uni.getStorageSync('Organization') != "浜嬩笟涓�澶�") {
+				if (uni.getStorageSync('Organization') == "鏉窞鏂帿灏旂鎬ф潗鏂欐湁闄愬叕鍙�") {
 					if (!this.hform.HSourceName) {
 						uni.showToast({
 							title: '璇峰厛閫夋嫨鎴栨壂鎻忕敓浜ц祫婧�',
@@ -365,12 +365,13 @@
 							var data = res.data.data[0];
 							var num = data.Num;
 							switch (num) {
+								//鐢熶骇璧勬簮
 								case 1:
 									this.hform.HSourceID = data.HItemID;
 									this.hform.HSourceName = data.HName;
 									this.refreshBarCodeState();
 									break;
-
+								//鐢熶骇璁㈠崟
 								case 2:
 									this.hform.HICMOBillNo = data.鍗曟嵁鍙�;
 									this.hform.HICMOInterID = data.hmainid;
@@ -383,7 +384,7 @@
 										this.GetMaterialMouldList();
 									}
 									break;
-
+								//妯″叿
 								case 3:
 									if (!this.hform.HICMOBillNo && !this.hform.HProcExchBillNo) {
 										uni.showToast({
@@ -414,6 +415,7 @@
 										this.handleMouldData(data);
 									}
 									break;
+								//娴佽浆鍗�
 								case 4:
 									this.hform.HProcExchBillNo = data.鍗曟嵁鍙�;
 									this.hform.HProcExchInterID = data.hmainid;
@@ -422,6 +424,8 @@
 									this.hform.HICMOInterID = data.hicmointerid;
 									this.hform.HICMOEntryID = data.HICMOEntryID;
 									this.hform.HMaterID = data.HMaterID;
+									this.hform.HSourceID = data.HSourceID;
+									this.hform.HSourceName = data.HSourceName;
 									this.refreshBarCodeState();
 									if (uni.getStorageSync('OrganizationID') == "100007" && uni.getStorageSync(
 											'Organization') == "浜嬩笟涓�澶�") {

--
Gitblit v1.9.1