From 40866099bebc0dd34412c7e88e349b8a66f88580 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 08 十二月 2025 17:05:23 +0800
Subject: [PATCH] #

---
 pages/basics/codePakin.vue | 1648 ++++++++++++++++++++++++++++------------------------------
 1 files changed, 790 insertions(+), 858 deletions(-)

diff --git a/pages/basics/codePakin.vue b/pages/basics/codePakin.vue
index 875bed8..a1a2580 100644
--- a/pages/basics/codePakin.vue
+++ b/pages/basics/codePakin.vue
@@ -1,898 +1,830 @@
 <template>
-	<view>
-		<scroll-view scroll-y catch:touchmove="touchmove">
-			<view class="square-2">
-				<view class="square-title">
-					<view class="title-sign">
-						<view class="sign"></view>
-					</view>
-					<view class="title-text"><text>鎵樼洏鏉$爜</text></view>
-				</view>
-				<view class="square-content">
-					<view class="content-input">
-						<input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="10" :focus="barcodeFocus"
-							@input="barcodeInput" placeholder-style="line-height:  85rpx;">
-						<uni-icons type="closeempty" size="20" color="#dadada" @click="removeBarcode()"></uni-icons>
-					</view>
-				</view>
-			</view>
+  <view>
+    <scroll-view scroll-y catch:touchmove="touchmove">
+      <!-- 鎵樼洏鏉$爜 -->
+      <view class="square-2">
+        <view class="square-title">
+          <view class="title-sign"><view class="sign"></view></view>
+          <view class="title-text"><text>鎵樼洏鏉$爜</text></view>
+        </view>
+        <view class="square-content">
+          <view class="content-input">
+            <input
+              v-model="barcode"
+              type="text"
+              placeholder="鎵爜 / 杈撳叆"
+              maxlength="10"
+              :focus="barcodeFocus"
+              @input="barcodeInput"
+              placeholder-style="line-height: 85rpx;"
+            />
+            <uni-icons type="closeempty" size="20" color="#dadada" @click="removeBarcode" />
+          </view>
+        </view>
+      </view>
+	  <!-- 搴撲綅鏉$爜 -->
+	  <view class="square-2">
+	    <view class="square-title">
+	      <view class="title-sign"><view class="sign"></view></view>
+	      <view class="title-text"><text>搴撲綅鏉$爜</text></view>
+	    </view>
+	    <view class="square-content">
+	      <view class="content-input">
+	        <input
+	          v-model="locNo"
+	          type="text"
+	          placeholder="鎵爜 / 杈撳叆"
+	          maxlength="7"
+	          :focus="locNoFocus"
+	          @input="locNoInput"
+	          placeholder-style="line-height: 85rpx;"
+	        />
+	        <uni-icons type="closeempty" size="20" color="#dadada" @click="removeLocNo" />
+	      </view>
+	    </view>
+	  </view>
 
-			<view class="square-2">
-				<view class="square-title">
-					<view class="title-sign">
-						<view class="sign"></view>
-					</view>
-					<view class="title-text"><text>鍟嗗搧鏉$爜</text></view>
-				</view>
-				<view class="square-content">
-					<view class="content-input">
-						<input v-model="code" type="text" placeholder="鎵爜 / 杈撳叆" :focus="codeFocus" @input="codeInput"
-							placeholder-style="line-height:  85rpx;">
-						<uni-icons type="closeempty" size="20" color="#dadada" @click="removeCode()()"></uni-icons>
-					</view>
-				</view>
-			</view>
+      <!-- 鍟嗗搧鏉$爜 -->
+      <view class="square-2">
+        <view class="square-title">
+          <view class="title-sign"><view class="sign"></view></view>
+          <view class="title-text"><text>鍟嗗搧鏉$爜</text></view>
+        </view>
+        <view class="square-content">
+          <view class="content-input">
+            <input
+              v-model="code"
+              type="text"
+              placeholder="鎵爜 / 杈撳叆"
+              :focus="codeFocus"
+              @input="codeInput"
+              placeholder-style="line-height: 85rpx;"
+            />
+            <uni-icons type="closeempty" size="20" color="#dadada" @click="removeCode" />
+          </view>
+        </view>
+      </view>
 
+      <!-- 鍟嗗搧鍒楄〃澶达紙鍚搷浣滐級 -->
+      <view class="square-1">
+        <view class="square-title">
+          <view class="title-sign"><view class="sign"></view></view>
+          <view class="title-text" style="width: 200rpx;"><text>鍟嗗搧鍒楄〃</text></view>
 
-			<view class="square-1">
-				<view class="square-title">
-					<view class="title-sign">
-						<view class="sign"></view>
-					</view>
-					<view class="title-text" style="width: 200rpx;"><text>鍟嗗搧鍒楄〃</text></view>
-					<view v-show="matList.length != 0" class="lable">
-						<label class="label-btn" style="width: 170rpx;line-height: 95rpx;">
-							<checkbox :checked="check" @click="allChecked()">{{checkText}}</checkbox>
-						</label>
-						<label class="label-btn">
-							<text @click="reChecked()">鍙嶉��</text>
-						</label>
-						<label>
-							<uni-icons type="trash" size="25" color="#a5a5a5" @click="remove()"></uni-icons>
-						</label>
-					</view>
-				</view>
+          <view v-show="matList.length" class="lable">
+            <label class="label-btn" style="width: 170rpx;line-height: 95rpx;">
+              <checkbox :checked="check" @click="allChecked">{{ checkText }}</checkbox>
+            </label>
+            <label class="label-btn"><text @click="reChecked">鍙嶉��</text></label>
+            <label><uni-icons type="trash" size="25" color="#a5a5a5" @click="removeSelected" /></label>
+          </view>
+        </view>
+      </view>
 
-			</view>
-			<view class="square-none" v-show="matList.length === 0">
-				<view class="v-show">鏆傛棤鏇村鏁版嵁...</view>
-			</view>
+      <view class="square-none" v-show="matList.length === 0">
+        <view class="v-show">鏆傛棤鏇村鏁版嵁...</view>
+      </view>
 
-			<checkbox-group @change="checkbox">
-				<view v-for="(item,index) in matList" :key="index" class="data-list bg-false"
-					:class="'bg-'+item.checked">
-					<label class="left-check-box">
-						<checkbox :value="item.id+''" :checked="item.checked" style="display: block;" />
-					</label>
-					<view class="data-list-left">
-						<view class="matnr"><text style="width: 500rpx;">缂栫爜锛歿{item.matnr}}</text>
-							<text style="margin-left: 100rpx;">鍚嶇О锛歿{item.maktx}}</text>
-						</view>
-						<view><text style="width: 500rpx;">PO锛歿{item.standby1}}</text>
-							<text style="margin-left: 100rpx;">SKU锛歿{item.standby3}}</text>
-						</view>
-						<view><text style="width: 500rpx;">UPC锛歿{item.standby2}}</text></view>
-						<view><text style="width: 500rpx;">閲囪喘鍗曪細{{item.boxType3}}</text>
-							<text style="margin-left: 100rpx;">鏁伴噺锛歿{item.anfme}}</text>
-						</view>
-					</view>
-					<view class="data-list-right">
-						<label><uni-icons type="compose" size="20" color="#a5a5a5"
-								@click="revise(item,index)"></uni-icons></label>
-						<!-- list涓垹闄ら敭 -->
-						<!-- <label><uni-icons type="trash" size="25" color="#a5a5a5" @click="remove(item,index)"></uni-icons></label> -->
-					</view>
-				</view>
-			</checkbox-group>
-		</scroll-view>
+      <!-- 鍒楄〃锛堜娇鐢� checkbox-group 缁熶竴绠$悊锛� -->
+      <checkbox-group @change="checkboxChanged">
+        <view
+          v-for="(item, index) in matList"
+          :key="item.id || index"
+          class="data-list bg-false"
+          :class="'bg-' + (item.checked ? 'true' : 'false')"
+        >
+          <label class="left-check-box">
+            <checkbox :value="(item.id + '')" :checked="item.checked" style="display:block;" />
+          </label>
 
-		<!-- 搴曢儴鎸夐挳 -->
-		<view class="footer flex justify-around">
-			<!-- 搴曢儴鍏ㄩ�� 鍙嶉�夋寜閽� -->
-			<!-- <label class="label-btn" style="width: 170rpx;">
-				<checkbox :checked="check" @click="allChecked()">{{checkText}}</checkbox>
-			</label>
-			<label class="label-btn" style="width: 100rpx;">
-				<text  @click="reChecked()">鍙嶉��</text>
-			</label> -->
+          <view class="data-list-left">
+            <view class="matnr">
+              <text style="width: 500rpx;">缂栫爜锛歿{ item.matnr }}</text>
+              <text style="margin-left: 100rpx;">鍚嶇О锛歿{ item.maktx }}</text>
+            </view>
+            <view>
+              <text style="width: 500rpx;">PO锛歿{ item.standby1 }}</text>
+              <text style="margin-left: 100rpx;">SKU锛歿{ item.standby3 }}</text>
+            </view>
+            <view><text style="width: 500rpx;">UPC锛歿{ item.standby2 }}</text></view>
+            <view>
+              <text style="width: 500rpx;">閲囪喘鍗曪細{{ item.boxType3 }}</text>
+              <text style="margin-left: 100rpx;">
+                鏁伴噺锛歿{ item.current }} / {{ item.maxAnfme }}
+              </text>
+            </view>
+          </view>
 
-			<label class="label-btn flex justify-center align-center">
-				<button class="cu-btn" @click="resst()">閲嶇疆</button>
-			</label>
-			<label class="label-btn flex justify-center align-center">
-				<button class="cu-btn bg-blue " @click="comb()">缁勬墭</button>
-			</label>
-		</view>
+          <view class="data-list-right">
+            <label>
+              <uni-icons type="compose" size="20" color="#a5a5a5" @click="openRevise(item, index)" />
+            </label>
+          </view>
+        </view>
+      </checkbox-group>
+    </scroll-view>
 
-		<view>
-			<!-- 淇敼鏁伴噺 -->
-			<uni-popup ref="revise" background-color="#fff" @change="change">
-				<view class="revise-box">
-					<view class="revise-box-top">
-						<view class="color-block-blue"></view>
-						<text class="title">缁勬墭鏁伴噺</text>
-					</view>
-					<view class="text-box">
-						<text>鍙粍鏁伴噺锛歿{enableQty}}</text>
-					</view>
-					<view class="changeBox flex justify-around">
-						<view class="num-box">
-							<uni-number-box v-model="count" :min="minCount" :max="maxCount" color="#747474"
-								@change="changeValue" />
-						</view>
+    <!-- 搴曢儴鎿嶄綔 -->
+    <view class="footer flex justify-around">
+      <label class="label-btn flex justify-center align-center">
+        <button class="cu-btn" @click="resst">閲嶇疆</button>
+      </label>
+      <label class="label-btn flex justify-center align-center">
+        <button class="cu-btn bg-blue" @click="comb">缁勬墭</button>
+      </label>
+    </view>
 
-					</view>
-					<view class="revise-box-buttom">
-						<view>
-							<button class="cu-btn bg-blue" @click="confirm()">纭</button>
-						</view>
-					</view>
+    <!-- 淇敼鏁伴噺寮圭獥 -->
+    <uni-popup ref="revise" background-color="#fff" @change="change">
+      <view class="revise-box">
+        <view class="revise-box-top">
+          <view class="color-block-blue"></view>
+          <text class="title">缁勬墭鏁伴噺</text>
+        </view>
 
-				</view>
-			</uni-popup>
-		</view>
-	</view>
+        <view class="text-box">
+          <text>鍙粍鏁伴噺锛歿{ enableQty }}</text>
+        </view>
+
+        <view class="changeBox flex justify-around">
+          <view class="num-box">
+            <uni-number-box v-model="count" :min="minCount" :max="maxCount" color="#747474" @change="changeValue" />
+          </view>
+        </view>
+
+        <view class="revise-box-buttom">
+          <view>
+            <button class="cu-btn bg-blue" @click="confirm">纭</button>
+          </view>
+        </view>
+      </view>
+    </uni-popup>
+  </view>
 </template>
 
 <script>
-	import permision from "@/common/permission.js"
-	export default {
-		data() {
-			return {
-				commonUrl: null,
-				barcode: '',
-				barcodeFocus: true,
-				focus: false,
-				type: 'center',
-				searchBox: 'hide',
-				pick: 'hide',
-				order: null,
-				matList: [],
-				result: '',
-				count: '',
-				minCount: 0,
-				maxCount: '',
-				rowNum: '',
-				enableQty: '',
-				check: false,
-				checkText: '鍏ㄩ��',
-				checkedData: [],
-				orderNo: '',
-				orderNoList: [],
-				showDropdown: false,
-				code: '',
-				codeFocus: true,
+import permision from "@/common/permission.js";
+
+export default {
+  data() {
+    return {
+      commonUrl: null,
+      barcode: "",
+      barcodeFocus: true,
+      focus: false,
+      type: "center",
+      order: null,
+      matList: [], // 姣忎釜 item: { id, matnr, maktx, standby1, standby2, standby3, boxType3, current, maxAnfme, checked }
+      count: 0,
+      minCount: 0,
+      maxCount: 0,
+      rowNum: null,
+      enableQty: 0,
+      check: false,
+      checkText: "鍏ㄩ��",
+      orderNo: "",
+      orderNoList: [],
+      showDropdown: false,
+      code: "",
+      codeFocus: true,
+	  locNo: "",
+	  locNoFocus: true,
+    };
+  },
+  mounted() {
+    const UIP = uni.getStorageSync("UIP");
+    this.baseIP = UIP;
+    const UPORT = uni.getStorageSync("UPORT");
+    this.basePORT = UPORT;
+    const PROJ = uni.getStorageSync("UPROJ");
+    this.baseUrl = PROJ;
+    this.getUrl();
+  },
+  methods: {
+    // 鏋勫缓 base url
+    getUrl() {
+      this.commonUrl = this.baseHttp + this.baseIP + ":" + this.basePORT + "/" + this.baseUrl;
+    },
+
+    /* -------------------------
+       鑾峰彇璁㈠崟鏄庣粏锛堟帴鍙h繑鍥� combMats锛�
+       鍒濆鍖栨瘡涓� item 鐨� current / maxAnfme / checked
+       ------------------------- */
+    getOrderDetlByOrderNo() {
+      if (!this.orderNo) {
+        uni.showToast({ title: "璇烽�夋嫨璁㈠崟", icon: "none" });
+        return;
+      }
+      const that = this;
+      uni.request({
+        url: that.commonUrl + "/mobile/order/search/orderNo/auth",
+        data: { orderNo: that.orderNo },
+        header: { token: uni.getStorageSync("token") },
+        success(result) {
+          const res = result.data;
+          if (res.code === 200 && res.data && res.data[0]) {
+            uni.showLoading();
+            // 鍘熷 combMats 鍙兘鍖呭惈 backend 鐨� anfme锛屼綔涓� max 浣跨敤
+            that.matList = (res.data[0].combMats || []).map(it => {
+              // 瑙勮寖瀛楁鍚嶏紙boxType3 / boxtype3锛�
+              it.boxType3 = it.boxType3 || it.boxtype3 || "";
+              return {
+                ...it,
+                maxAnfme: Number(it.anfme || 0), // 鍚庣鏈�澶у彲缁勬墭鏁伴噺
+                current: 0, // 褰撳墠宸茬粍鏁伴噺锛堝墠绔淮鎶わ級
+                checked: false,
+              };
+            });
+            that.initAnfme();
+            uni.hideLoading();
+          } else if (res.code == 403) {
+            uni.showToast({ title: res.msg, icon: "none", position: "top" });
+            setTimeout(() => uni.reLaunch({ url: "../login/login" }), 1000);
+          } else {
+            uni.showToast({ title: res.msg || "鑾峰彇澶辫触", icon: "none" });
+          }
+        },
+      });
+    },
+
+    // 鍒濆鍖栵細鎶婂悗绔殑 anfme 淇濆瓨涓� enableQty锛堟樉绀虹敤锛夛紝骞舵妸 current 缃� 0
+    initAnfme() {
+      for (let i = 0; i < this.matList.length; i++) {
+        this.matList[i].enableQty = this.matList[i].maxAnfme || 0;
+        // ensure current exists
+        if (typeof this.matList[i].current !== "number") this.matList[i].current = 0;
+        if (typeof this.matList[i].checked !== "boolean") this.matList[i].checked = false;
+      }
+      this.checkList();
+    },
+
+    /* -------------------------
+       鎵爜/杈撳叆閫昏緫
+       barcodeInput: 鎵樼洏鐮侊紙鏍¢獙闀垮害锛�
+       codeInput: 鍟嗗搧鐮侊紙瑙f瀽骞惰姹傛槑缁嗘帴鍙� / 鍚堝苟鍒� matList锛�
+       ------------------------- */
+    barcodeInput() {
+      const len = this.barcode.length;
+      if (len !== 6) {
+        // 6 浣嶆墭鐩樼爜瑙勫垯锛氳嫢闈� 6 浣嶅垯涓嶇粰浜堣繘涓�姝ュ鐞嗭紝浣嗕笉瑕侀绻佸脊妗嗭紝鍙湁鏄庣‘閿欒鏃跺脊
+        // 杩欓噷淇濇寔鍘熷垽瀹氶�昏緫锛氬鏋滈暱搴︿笉鏄� 6 鍒欐彁绀�
+        uni.showToast({ title: "鎵樼洏鐮佹湁璇閲嶈瘯", icon: "none", position: "top" });
+        this.barcodeFocuss();
+        return;
+      }
+      // 鑻ラ暱搴﹀悎瑙勶紝鍙仛鐒﹀埌鍟嗗搧杈撳叆
+      this.focuss();
+    },
+	locNoInput() {
+	  const len = this.locNo.length;
+	  if (len !== 7) {
+	    // 6 浣嶆墭鐩樼爜瑙勫垯锛氳嫢闈� 6 浣嶅垯涓嶇粰浜堣繘涓�姝ュ鐞嗭紝浣嗕笉瑕侀绻佸脊妗嗭紝鍙湁鏄庣‘閿欒鏃跺脊
+	    // 杩欓噷淇濇寔鍘熷垽瀹氶�昏緫锛氬鏋滈暱搴︿笉鏄� 6 鍒欐彁绀�
+	    uni.showToast({ title: "搴撲綅鏈夎璇烽噸璇�", icon: "none", position: "top" });
+	    this.locNoFocuss();
+	    return;
+	  }
+	  // 鑻ラ暱搴﹀悎瑙勶紝鍙仛鐒﹀埌鍟嗗搧杈撳叆
+	  this.focuss();
+	},
+
+	codeInput() {
+	  const that = this;
+	  const m = (that.code || "").split(";");
+	  if (!m[1] || !m[5] || !m[9]) {
+		uni.showToast({ title: "鏉$爜鏈夎", icon: "none", position: "top" });
+		this.codeFocuss();
+		return;
+	  }
+
+	  uni.request({
+		url: that.commonUrl + "/mobile/order/search/orderDetl/auth",
+		data: JSON.stringify({
+		  orderNo: m[1],
+		  sku: m[5],
+		  upc: m[9],
+		}),
+		method: "POST",
+		header: { token: uni.getStorageSync("token") },
+		success(result) {
+		  const res = result.data;
+		  if (res.code === 200 && res.data && Array.isArray(res.data.combMats)) {
+			
+			const firstBoxType = that.matList[0]?.boxType3; // 绗竴涓墿鏂欑殑 boxType3
+			let inconsistent = false;
+
+			res.data.combMats.forEach(serverItem => {
+			  serverItem.boxType3 = serverItem.boxType3 || serverItem.boxtype3 || "";
+
+			  // 鉂� 妫�鏌� boxType3 鏄惁涓�鑷�
+			  if (firstBoxType && serverItem.boxType3 !== firstBoxType) {
+				inconsistent = true;
+				return;
+			  }
+
+			  const max = Number(serverItem.anfme || 0);
+			  if (max <= 0) {
+				uni.showToast({ title: "褰撳墠鐗╂枡鍗曟嵁鏃犳暟鎹�", icon: "none" });
+				return;
+			  }
+
+			  const existItem = that.matList.find(
+				m =>
+				  m.matnr === serverItem.matnr &&
+				  (m.standby2 || "") === (serverItem.standby2 || "") &&
+				  (m.standby3 || "") === (serverItem.standby3 || "") &&
+				  (m.boxType3 || "") === (serverItem.boxType3 || "")
+			  );
+
+			  if (existItem) {
+				existItem.current = Math.min(existItem.current + 1, existItem.maxAnfme);
+			  } else {
+				that.matList.push({
+				  ...serverItem,
+				  maxAnfme: max,
+				  current: 1,
+				  checked: false,
+				});
+			  }
+			});
+
+			if (inconsistent) {
+			  uni.showToast({ title: "鍗曟嵁涓嶄竴鑷达紝璇锋鏌�", icon: "none", position: "top" });
+			  that.codeFocuss();
+			  return;
 			}
+
+			that.codeFocuss();
+			that.checkList();
+		  } else if (res.code == 403) {
+			uni.showToast({ title: res.msg, icon: "none", position: "top" });
+			setTimeout(() => uni.reLaunch({ url: "../login/login" }), 1000);
+		  } else {
+			uni.showToast({ title: res.msg || "鑾峰彇鏉$爜鍟嗗搧澶辫触", icon: "none" });
+		  }
 		},
-		mounted() {
-			const UIP = uni.getStorageSync('UIP');
-			this.baseIP = UIP;
-			const UPORT = uni.getStorageSync('UPORT');
-			this.basePORT = UPORT
-			const PROJ = uni.getStorageSync('UPROJ');
-			this.baseUrl = PROJ
-			this.getUrl()
+		fail() {
+		  uni.showToast({ title: "璇锋眰澶辫触", icon: "none" });
 		},
-		methods: {
-			getOrderDet(orderNo) {
-				if (!orderNo || orderNo.trim() === '') return;
-				uni.request({
-					url: this.commonUrl + '/mobile/order/search/orderNoList/auth',
-					method: 'GET',
-					data: {
-						orderNo
-					},
-					header: {
-						token: uni.getStorageSync('token')
-					},
-					success: res => {
-						const list = res.data.data || [];
-						this.orderNoList = list.map(o => o.orderNo);
-					}
-				});
-			},
-
-			onOrderSelect(order) {
-				this.orderNo = order;
-				// 鍙�夛細鑷姩瑙﹀彂鏌ヨ
-				// this.getOrderDetlByOrderNo();
-			},
-			getOrderDetlByOrderNo() {
-				if (!this.orderNo) {
-					uni.showToast({
-						title: '璇烽�夋嫨璁㈠崟',
-						icon: 'none'
-					});
-					return;
-				}
-				let that = this;
-				uni.request({
-					url: that.commonUrl + '/mobile/order/search/orderNo/auth',
-					data: {
-						orderNo: that.orderNo
-					},
-					header: {
-						token: uni.getStorageSync('token')
-					},
-					success(result) {
-						let res = result.data;
-						console.log(res.data[0]);
-						if (res.code === 200) {
-							if (res.data) {
-								uni.showLoading();
-								that.matList = res.data[0].combMats;
-								that.initAnfme();
-								console.log(that.matList);
-							}
-						} else if (res.code == 403) {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-							setTimeout(() => {
-								uni.reLaunch({
-									url: '../login/login'
-								});
-							}, 1000);
-						} else {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-						}
-					}
-				});
-			},
+	  });
+	},
 
 
+    // 澶辩劍 / 閲嶇疆鐒︾偣鐨勬柟娉�
+    codeFocuss() {
+      this.codeFocus = false;
+      setTimeout(() => {
+        this.code = "";
+        this.codeFocus = true;
+      }, 100);
+    },
+	locNoFocuss() {
+	  this.locNoFocus = false;
+	  setTimeout(() => {
+	    this.locNo = "";
+	    this.locNoFocus = true;
+	  }, 100);
+	},
+    barcodeFocuss() {
+      this.barcodeFocus = false;
+      setTimeout(() => {
+        this.barcode = "";
+        this.barcodeFocus = true;
+      }, 100);
+    },
+    focuss() {
+      this.focus = false;
+      setTimeout(() => {
+        this.matnrId = "";
+        this.focus = true;
+      }, 100);
+    },
 
-			selectOrder(orderNo) {
-				this.order = orderNo
-				this.showDropdown = false
-			},
-			removeOrder() {
-				this.order = ''
-				this.orderSuggestions = []
-				this.showDropdown = false
-			},
-			// 鑾峰彇url
-			getUrl() {
-				this.commonUrl = this.baseHttp + this.baseIP + ':' + this.basePORT + "/" + this.baseUrl
-			},
-			// barcode input 浜嬩欢
-			barcodeInput() {
-				var len = this.barcode.length
-				if (len != 6) {
-					uni.showToast({
-						title: '鎵樼洏鐮佹湁璇閲嶈瘯',
-						icon: "none",
-						position: 'top'
-					});
-					this.barcodeFocuss()
-					return;
-				}
-				if (len == 6) {
-					this.focuss()
-				}
-			},
-			codeInput() {
-				const that = this;
-				let m = that.code.split(";")
-				if (!m[1] || !m[5] || !m[9]) {
-					uni.showToast({
-						title: '鏉$爜鏈夎',
-						icon: "none",
-						position: 'top'
-					});
-					this.codeFocuss()
-					return;
-				}
-				uni.request({
-					url: that.commonUrl + '/mobile/order/search/orderDetl/auth',
-					data: JSON.stringify({
-						orderNo: m[1],
-						sku: m[5],
-						upc: m[9],
-					}),
-					method: 'POST',
-					header: {
-						'token': uni.getStorageSync('token'),
-					},
-					success(result) {
-						var res = result.data;
-						if (res.code === 200) {
-							res.data.combMats.forEach(item => {
-								const existItem = that.matList.find(m => m.matnr === item.matnr &&
-									m.standby2 === item.standby2 &&
-									m.standby3 === item.standby3 &&
-									m.boxtype3 === item.boxtype3
-								)
-								if (existItem) {
-									existItem.anfme = (existItem.anfme || 0) + (item.anfme || 1)
-								} else {
-									item.anfme = 1
-									that.matList.push(item)
-								}
-							})
-							that.codeFocuss()
-						} else if (res.code == 403) {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-							setTimeout(() => {
-								uni.reLaunch({
-									url: '../login/login'
-								});
-							}, 1000);
-						} else {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-						}
-					}
-				});
-				console.log(m)
-			},
-			// 鎵樼洏鐮佹湁璇噸缃�
-			codeFocuss() {
+    /* -------------------------
+       缂栬緫鏁伴噺寮圭獥锛堟墦寮�/纭锛�
+       ------------------------- */
+    openRevise(item, index) {
+      // 鏇存柊 maxCount / enableQty / count
+      this.rowNum = index;
+      this.enableQty = item.maxAnfme || 0;
+      this.minCount = 0;
+      this.maxCount = item.maxAnfme || 0;
+      this.count = item.current || 0;
+      this.$refs.revise.open();
+    },
 
-				let that = this;
-				that.codeFocus = false;
-				setTimeout(() => {
-					that.code = '';
-					that.codeFocus = true;
-				}, 100);
+    confirm() {
+      // 闄愬埗鑼冨洿鐒跺悗鍐欏洖 matList
+      const idx = this.rowNum;
+      if (idx == null || !this.matList[idx]) {
+        this.$refs.revise.close();
+        return;
+      }
+      let v = Number(this.count) || 0;
+      v = Math.max(0, Math.min(v, this.matList[idx].maxAnfme || 0));
+      this.matList[idx].current = v;
+      this.$refs.revise.close();
+    },
 
-			},
-			barcodeFocuss() {
-				// #ifdef APP
-				let that = this;
-				that.barcodeFocus = false;
-				setTimeout(() => {
-					that.barcode = '';
-					that.barcodeFocus = true;
-				}, 100);
-				// #endif
-			},
-			focuss() {
-				// #ifdef APP
-				let that = this;
-				that.focus = false;
-				setTimeout(() => {
-					that.matnrId = '';
-					that.focus = true;
-				}, 100);
-				// #endif
-			},
-			resst() {
-				this.matList = []
-				this.barcode = ''
-				this.order = ''
-				this.orderNo = '';
-				this.barcodeFocuss()
-				uni.vibrateShort();
-			},
-			removeBarcode() {
-				this.barcode = ''
-				uni.vibrateShort();
-				this.barcodeFocus = false;
-				this.$nextTick(function() {
-					this.barcodeFocus = true;
-				});
-			},
-			removeCode() {
-				this.code = ''
-				uni.vibrateShort();
-				this.codeFocus = false;
-				this.$nextTick(function() {
-					this.codeFocus = true;
-				});
-			},
-			removeOrder() {
-				this.order = ''
-				uni.vibrateShort();
-				this.focus = false;
-				this.$nextTick(function() {
-					this.focus = true;
-				});
-			},
-			eject(type) {
-				this.type = type
-				// open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦� uni-popup 缁勪欢涓婄粦瀹� type灞炴��
-				this.$refs.revise.open(type)
-			},
-			initAnfme() {
+    changeValue() {
+      // 鍙湪杩欓噷娣诲姞瀹炴椂鏍¢獙锛堝綋鍓嶄娇鐢� uni-number-box 鑷甫 min/max锛�
+    },
 
-				for (var i = 0; i < this.matList.length; i++) {
-					this.matList[i].enableQty = this.matList[i].anfme
-					this.matList[i].anfme = 0
-				}
-				uni.hideLoading();
-			},
-			revise(item, index) {
-				var maxCount = this.matList[index].maxCount
-				if (maxCount == undefined) {
-					this.matList[index]["maxCount"] = item.enableQty
-				}
-				this.enableQty = item.enableQty
-				this.count = this.minCount
-				this.maxCount = item.maxCount
-				this.rowNum = index
-				this.eject()
-			},
-			changeMax() {
-				this.count = this.enableQty
-			},
-			changeValue() {
+    /* -------------------------
+       缁勬墭锛堟彁浜わ級
+       ------------------------- */
+    comb() {
+      uni.vibrateShort();
+      const that = this;
 
-			},
-			remove() {
-				console.log(this.matList.filter(item => item.checked !== true))
-				this.matList = this.matList.filter(item => item.checked !== true)
+      if (!that.barcode) {
+        uni.showToast({ title: "璇锋壂鎻忔墭鐩樻潯鐮�", icon: "none", position: "top" });
+        return;
+      }
+	  if (!that.locNo) {
+	    uni.showToast({ title: "璇锋壂鎻忓簱浣嶆潯鐮�", icon: "none", position: "top" });
+	    return;
+	  }
+      if (that.barcode.length !== 6) {
+        uni.showToast({ title: "鎵樼洏鐮佸繀椤讳负6浣�", icon: "none", position: "top" });
+        return;
+      }
+      if (!that.matList.length) {
+        uni.showToast({ title: "璇锋坊鍔犲晢鍝佸垪琛�", icon: "none", position: "top" });
+        return;
+      }
 
-				// this.matList.splice(i,1)
+      // 鍙彇 current > 0 鐨勬潯鐩紝骞舵槧灏勪负鍚庣闇�瑕佺殑瀛楁锛堟敞鎰忚繖閲屼粛浣跨敤鍚庣鏈熸湜瀛楁鍚� anfme锛�
+      const validMats = that.matList
+        .filter(item => Number(item.current || 0) > 0)
+        .map(item => {
+          return {
+            ...item,
+            anfme: Number(item.current || 0),
+          };
+        });
 
-				// for (var i = 0; i < this.matList.length; i++) {
-				// 	if (this.matList[i].checked == true) {
+      if (!validMats.length) {
+        uni.showToast({ title: "鎵�鏈夊晢鍝佺粍鎵樻暟閲忎负0锛屾棤娉曠粍鎵�", icon: "none", position: "top" });
+        return;
+      }
 
-				// 	}
-				// }
-				this.checkList();
-				uni.vibrateShort();
-			},
-			// 鍒楄〃涓垹闄�
-			// remove(item,index) {
-			// 	this.matList.splice(index,1)
-			// 	uni.vibrateShort();
-			// },
-			confirm() {
-				this.matList[this.rowNum].anfme = this.count
-				this.$refs.revise.close()
-			},
-			comb() {
-				uni.vibrateShort();
-				let that = this;
+      // 鏇存柊鐣岄潰鍒楄〃涓轰粎鍓╂湁鏁堟潯鐩紙鍒犻櫎鏁伴噺涓�0鐨勶級
+      that.matList = that.matList.filter(item => Number(item.current || 0) > 0);
 
-				if (that.barcode === '') {
-					uni.showToast({
-						title: '璇锋壂鎻忔墭鐩樻潯鐮�',
-						icon: "none",
-						position: 'top'
-					});
-					return;
-				}
-				if (that.barcode.length !== 6) {
-					uni.showToast({
-						title: '鎵樼洏鐮佸繀椤讳负6浣�',
-						icon: "none",
-						position: 'top'
-					});
-					return;
-				}
-				if (that.matList.length === 0) {
-					uni.showToast({
-						title: '璇锋坊鍔犲晢鍝佸垪琛�',
-						icon: "none",
-						position: 'top'
-					});
-					return;
-				}
+      uni.showLoading();
+      uni.request({
+        url: that.commonUrl + "/mobile/comb/auth",
+        data: JSON.stringify({
+          billNo: that.orderNo,
+          orderNo: that.orderNo,
+          barcode: that.barcode,
+		  locNo: that.locNo,
+          combMats: validMats,
+        }),
+        method: "POST",
+        header: { token: uni.getStorageSync("token") },
+        success(result) {
+          uni.hideLoading();
+          const res = result.data;
+          if (res.code === 200) {
+            uni.showToast({ title: res.msg, position: "top", duration: 1000 });
+            that.resst();
+          } else if (res.code == 403) {
+            uni.showToast({ title: res.msg, icon: "none", position: "top" });
+            setTimeout(() => uni.reLaunch({ url: "../login/login" }), 1000);
+          } else {
+            uni.showToast({ title: res.msg || "缁勬墭澶辫触", icon: "none" });
+          }
+        },
+        fail() {
+          uni.hideLoading();
+          uni.showToast({ title: "璇锋眰澶辫触", icon: "none" });
+        },
+      });
+    },
 
-				// 杩囨护鍑烘暟閲忓ぇ浜�0鐨勫晢鍝�
-				const validMats = that.matList.filter(item => item.anfme > 0);
+    /* -------------------------
+       鍒犻櫎宸查�� / 閲嶇疆
+       ------------------------- */
+    removeSelected() {
+      this.matList = this.matList.filter(item => !item.checked);
+      this.checkList();
+      uni.vibrateShort();
+    },
 
-				if (validMats.length === 0) {
-					uni.showToast({
-						title: '鎵�鏈夊晢鍝佺粍鎵樻暟閲忎负0锛屾棤娉曠粍鎵�',
-						icon: "none",
-						position: 'top'
-					});
-					return;
-				}
+    resst() {
+      this.matList = [];
+      this.barcode = "";
+	  this.locNo = ""
+      this.order = "";
+      this.orderNo = "";
+      this.barcodeFocuss();
+      uni.vibrateShort();
+      this.checkList();
+    },
 
-				// 鍒犻櫎鏁伴噺涓�0鐨勫晢鍝�
-				that.matList = validMats;
+    /* -------------------------
+       checkbox 鐩稿叧锛堢粺涓�绠$悊锛歝heckbox-group -> change锛�
+       ------------------------- */
+    checkboxChanged(e) {
+      const values = e.detail.value || [];
+      this.matList.forEach(item => {
+        item.checked = values.includes(item.id + "");
+      });
+      this.checkList();
+      uni.vibrateShort();
+    },
 
-				uni.showLoading();
+    // 鍙嶉��
+    reChecked() {
+      if (!this.matList.length) return;
+      this.matList.forEach(item => {
+        item.checked = !item.checked;
+      });
+      this.checkList();
+      uni.vibrateShort();
+    },
 
-				uni.request({
-					url: that.commonUrl + '/mobile/comb/auth',
-					data: JSON.stringify({
-						billNo: that.orderNo,
-						orderNo: that.orderNo,
-						barcode: that.barcode,
-						combMats: validMats
-					}),
-					method: 'POST',
-					header: {
-						'token': uni.getStorageSync('token'),
-					},
-					success(result) {
-						uni.showLoading();
-						var res = result.data;
-						if (res.code === 200) {
-							uni.showToast({
-								title: res.msg,
-								position: 'top',
-								duration: 1000
-							});
-							that.resst();
-						} else if (res.code == 403) {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-							setTimeout(() => {
-								uni.reLaunch({
-									url: '../login/login'
-								});
-							}, 1000);
-						} else {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							});
-						}
-					}
-				});
-			},
+    // 鍏ㄩ�� / 鍙栨秷鍏ㄩ��
+    allChecked() {
+      this.check = !this.check;
+      this.matList.forEach(item => (item.checked = this.check));
+      this.checkText = this.check ? "鍙栨秷鍏ㄩ��" : "鍏ㄩ��";
+      uni.vibrateShort();
+    },
 
-			findOrder() {
-				let that = this
-				uni.request({
-					url: that.commonUrl + '/mobile/order/search/orderNo/auth',
-					data: {
-						orderNo: that.order
-					},
-					header: {
-						'token': uni.getStorageSync('token')
-					},
-					success(result) {
-						let res = result.data
-						console.log(res.data[0])
-						if (res.code === 200) {
-							if (res.data) {
-								uni.showLoading();
-								that.matList = res.data[0].combMats;
-								that.orderNo = that.order
-								that.initAnfme()
-								console.log(that.matList)
-							}
-						} else if (res.code == 403) {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							})
-							setTimeout(() => {
-								uni.reLaunch({
-									url: '../login/login'
-								});
-							}, 1000);
-						} else {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								position: 'top'
-							})
-						}
-					}
-				});
-			},
-			change(e) {
-				// console.log('褰撳墠妯″紡锛�' + e.type + ',鐘舵�侊細' + e.show);
-			},
-			toggle(type) {
-				this.type = type
-				// open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦� uni-popup 缁勪欢涓婄粦瀹� type灞炴��
-				this.$refs.goodsSearch.open(type)
-			},
-			// 鍒楄〃閫夋嫨
-			checkbox(e) {
-				const values = e.detail.value;
-				this.matList.forEach(item => {
-					// 纭繚 item.id 鏄瓧绗︿覆
-					const itemId = item.id + '';
-					item.checked = values.includes(itemId);
-				});
+    // 鏇存柊椤甸潰椤堕儴鍏ㄩ�夋枃妗堢姸鎬�
+    checkList() {
+      if (!this.matList.length) {
+        this.check = false;
+        this.checkText = "鍏ㄩ��";
+        return;
+      }
+      const all = this.matList.every(item => item.checked);
+      this.check = all;
+      this.checkText = all ? "鍙栨秷鍏ㄩ��" : "鍏ㄩ��";
+    },
 
-				if (values.length === this.matList.length) {
-					this.check = true;
-					this.checkText = "鍙栨秷鍏ㄩ��";
-				} else {
-					this.check = false;
-					this.checkText = "鍏ㄩ��";
-				}
+    /* -------------------------
+       鏍规嵁杈撳叆鏌ヨ鍗曞缓璁紙鏈敼鍔級
+       ------------------------- */
+    getOrderDet(orderNo) {
+      if (!orderNo || orderNo.trim() === "") return;
+      uni.request({
+        url: this.commonUrl + "/mobile/order/search/orderNoList/auth",
+        method: "GET",
+        data: { orderNo },
+        header: { token: uni.getStorageSync("token") },
+        success: res => {
+          const list = res.data.data || [];
+          this.orderNoList = list.map(o => o.orderNo);
+        },
+      });
+    },
 
-				uni.vibrateShort();
-			},
+    onOrderSelect(order) {
+      this.orderNo = order;
+    },
 
-			// 鍒楄〃鍙嶉��
-			reChecked() {
-				if (this.matList.length == 0) {
-					return;
-				}
-				var checkArr = []
-				for (var i = 0; i < this.matList.length; i++) {
-					if (this.matList[i].checked == true) {
-						this.$set(this.matList[i], 'checked', false)
-					} else {
-						this.$set(this.matList[i], 'checked', true)
-					}
-					if (this.matList[i].checked == true) {
-						checkArr.push(this.matList[i].checked)
-					}
-				}
-				if (checkArr.length == this.matList.length) {
-					this.check = true
-					this.checkText = "鍙栨秷鍏ㄩ��"
-				} else {
-					this.check = false
-					this.checkText = "鍏ㄩ��"
-				}
-				uni.vibrateShort();
-			},
-			// 鍒楄〃鍏ㄩ��
-			allChecked(e) {
-				if (this.check == true) {
-					for (var i = 0; i < this.matList.length; i++) {
-						this.$set(this.matList[i], 'checked', false)
-					}
-					this.check = false
-					this.checkText = "鍏ㄩ��"
-				} else {
-					for (var i = 0; i < this.matList.length; i++) {
-						this.$set(this.matList[i], 'checked', true)
-					}
-					this.check = true
-					this.checkText = "鍙栨秷鍏ㄩ��"
-				}
-				uni.vibrateShort();
-			},
-			// 妫�楠屽垪琛ㄩ暱搴� 绛変簬0 鏄剧ず鍏ㄩ��  
-			checkList() {
-				if (this.matList.length == 0) {
-					this.check = false
-					this.checkText = "鍏ㄩ��"
-					return;
-				}
-			}
-		}
-	}
+    findOrder() {
+      if (!this.order) return;
+      const that = this;
+      uni.request({
+        url: that.commonUrl + "/mobile/order/search/orderNo/auth",
+        data: { orderNo: that.order },
+        header: { token: uni.getStorageSync("token") },
+        success(result) {
+          const res = result.data;
+          if (res.code === 200 && res.data && res.data[0]) {
+            uni.showLoading();
+            that.matList = (res.data[0].combMats || []).map(it => {
+              it.boxType3 = it.boxType3 || it.boxtype3 || "";
+              return {
+                ...it,
+                maxAnfme: Number(it.anfme || 0),
+                current: 0,
+                checked: false,
+              };
+            });
+            that.orderNo = that.order;
+            that.initAnfme();
+            uni.hideLoading();
+          } else if (res.code == 403) {
+            uni.showToast({ title: res.msg, icon: "none", position: "top" });
+            setTimeout(() => uni.reLaunch({ url: "../login/login" }), 1000);
+          } else {
+            uni.showToast({ title: res.msg || "鏌ユ棤鏁版嵁", icon: "none" });
+          }
+        },
+      });
+    },
+
+    // 绉婚櫎 code / barcode 绛夊皬宸ュ叿
+    removeBarcode() {
+      this.barcode = "";
+      uni.vibrateShort();
+      this.barcodeFocus = false;
+      this.$nextTick(() => (this.barcodeFocus = true));
+    },
+	removeLocNo() {
+	  this.locNo = "";
+	  uni.vibrateShort();
+	  this.locNoFocus = false;
+	  this.$nextTick(() => (this.locNoFocus = true));
+	},
+    removeCode() {
+      this.code = "";
+      uni.vibrateShort();
+      this.codeFocus = false;
+      this.$nextTick(() => (this.codeFocus = true));
+    },
+  },
+};
 </script>
 
 <style>
-	/* @import "../../colorui/main.css";
-	@import "../../colorui/icon.css"; */
-	.square-1 .lable {
-		display: inline-block;
-		float: right;
-		height: 100%;
-		width: 400rpx;
-	}
-
-	.square-1 .lable label {
-		display: inline-block;
-		float: left;
-		height: 100%;
-		width: 90rpx;
-		line-height: 100rpx;
-	}
-
-	.pak-seach-box {
-		background-color: #FFFFFF;
-		margin: 15rpx 15rpx 0rpx 15rpx;
-		width: 96%;
-		height: 150rpx;
-		border-radius: 20rpx;
-	}
-
-	.box-top {
-		display: block;
-		height: 60rpx;
-		width: 720rpx;
-	}
-
-	.color-block-blue {
-		background-color: #1E9FFF;
-		display: inline-block;
-		float: left;
-		margin: 15rpx 15rpx 0 15rpx;
-		width: 12rpx;
-		height: 40rpx;
-		border: 5rpx solid #1E9FFF;
-		border-radius: 20rpx;
-	}
-
-	.title {
-		display: inline-block;
-		float: left;
-		font-size: 34rpx;
-		font-weight: 700;
-		height: 50rpx;
-		line-height: 50rpx;
-		margin-top: 10rpx;
-	}
-
-	.box-buttom {
-		display: inline-block;
-		background-color: #ededed;
-		width: 96%;
-		height: 60rpx;
-		border-radius: 20rpx;
-		margin: 15rpx 15rpx 0rpx 15rpx;
-	}
-
-	.box-buttom input {
-		width: 75%;
-		float: left;
-		margin: 8rpx 10rpx 0rpx 25rpx;
-	}
-
-	.box-buttom .search-icon {
-		width: 60rpx;
-		height: 60rpx;
-		float: right;
-		margin-top: 5rpx;
-		margin-right: 10rpx;
-	}
-
-	.pak-seach-box button {
-		background-color: #1E9FFF;
-		color: #ffffff;
-		display: inline-block;
-		float: right;
-		width: 150rpx;
-		height: 60rpx;
-		margin: 15rpx 15rpx 0rpx 15rpx;
-		line-height: 60rpx;
-	}
-
-	.pakin-btn {
-		background-color: #1E9FFF;
-	}
-
-	.pak-data-box {
-		background-color: #F1F1F1;
-		margin: 15rpx 15rpx 0rpx 15rpx;
-		width: 96%;
-		height: 70rpx;
-		border-radius: 20rpx;
-	}
-
-	.pak-data-box .box-top {
-		background-color: #FFFFFF;
-		height: 70rpx;
-		border-radius: 20rpx 20rpx 20rpx 20rpx;
-	}
-
-	.bg-false {
-		background-color: #FFFFFF;
-	}
-
-	.bg-true {
-		background-color: #ebebeb;
-	}
-
-	.data-list {
-		border-bottom: 1px solid #d8d8d8;
-		height: 180rpx;
-		margin: 15rpx;
-		border-radius: 20rpx;
-	}
-
-	.data-list:first-child {
-		margin-top: 20rpx;
-	}
-
-	.data-list:last-child {
-		margin-bottom: 160rpx;
-	}
-
-	/* .data-list-left {
-		display: inline-block;
-		float: left;
-		text-align: center;
-		width: 100rpx;
-		height: 180rpx;
-		line-height: 180rpx;
-	} */
-	.left-check-box {
-		display: inline-block;
-		/* background-color: #1E9FFF; */
-		float: left;
-		height: 100%;
-		width: 100rpx;
-		text-align: center;
-		line-height: 170rpx;
-	}
-
-	.data-list-left {
-		/* background-color: #ffff7f; */
-		display: inline-block;
-		float: left;
-		height: 180rpx;
-		width: 500rpx;
-		color: #676767;
-	}
-
-	.matnr {
-		padding-top: 10rpx;
-	}
-
-	.data-list-right {
-		/* background-color: #55ffff; */
-		display: inline-block;
-		float: right;
-		width: 100rpx;
-		height: 180rpx;
-		line-height: 180rpx;
-	}
-
-	.data-list-right label {
-		display: inline-block;
-		float: left;
-		width: 100rpx;
-		height: 180rpx;
-	}
-
-	.revise-box {
-		width: 500rpx;
-		height: 500rpx;
-	}
-
-	.revise-box-top {
-		width: 100%;
-		height: 100rpx;
-		background-color: #fff;
-		padding: 10rpx;
-	}
-
-	.changeBox {
-		width: 100%;
-		height: 100rpx;
-		line-height: 120rpx;
-		text-align: center;
-		background-color: #FFF;
-		margin-top: 20rpx;
-		border-bottom: 1px solid #e3e3e3;
-	}
-
-	.text-box {
-		width: 100%;
-		height: 100rpx;
-		line-height: 120rpx;
-		text-align: center;
-		/* padding-left: 120rpx; */
-		background-color: #FFF;
-		margin-top: 20rpx;
-		border-bottom: 1px solid #e3e3e3;
-	}
-
-	.changeBox .num-box {
-		display: inline-block;
-		float: left;
-	}
-
-	.changeBox button {
-		float: left;
-	}
-
-	.revise-box-buttom {
-		position: absolute;
-		width: 100%;
-		height: 100rpx;
-		line-height: 100rpx;
-		background-color: #FFFFFF;
-		bottom: 0;
-		text-align: center;
-	}
-</style>
\ No newline at end of file
+/* 浣犵殑鏍峰紡鎴戜繚鐣欏苟鍋氬皬骞呮竻鐞� */
+.square-1 .lable {
+  display: inline-block;
+  float: right;
+  height: 100%;
+  width: 400rpx;
+}
+.square-1 .lable label {
+  display: inline-block;
+  float: left;
+  height: 100%;
+  width: 90rpx;
+  line-height: 100rpx;
+}
+.pak-seach-box {
+  background-color: #FFFFFF;
+  margin: 15rpx 15rpx 0rpx 15rpx;
+  width: 96%;
+  height: 150rpx;
+  border-radius: 20rpx;
+}
+.box-top {
+  display: block;
+  height: 60rpx;
+  width: 720rpx;
+}
+.color-block-blue {
+  background-color: #1E9FFF;
+  display: inline-block;
+  float: left;
+  margin: 15rpx 15rpx 0 15rpx;
+  width: 12rpx;
+  height: 40rpx;
+  border: 5rpx solid #1E9FFF;
+  border-radius: 20rpx;
+}
+.title {
+  display: inline-block;
+  float: left;
+  font-size: 34rpx;
+  font-weight: 700;
+  height: 50rpx;
+  line-height: 50rpx;
+  margin-top: 10rpx;
+}
+.box-buttom {
+  display: inline-block;
+  background-color: #ededed;
+  width: 96%;
+  height: 60rpx;
+  border-radius: 20rpx;
+  margin: 15rpx 15rpx 0rpx 15rpx;
+}
+.box-buttom input {
+  width: 75%;
+  float: left;
+  margin: 8rpx 10rpx 0rpx 25rpx;
+}
+.box-buttom .search-icon {
+  width: 60rpx;
+  height: 60rpx;
+  float: right;
+  margin-top: 5rpx;
+  margin-right: 10rpx;
+}
+.pak-seach-box button {
+  background-color: #1E9FFF;
+  color: #ffffff;
+  display: inline-block;
+  float: right;
+  width: 150rpx;
+  height: 60rpx;
+  margin: 15rpx 15rpx 0rpx 15rpx;
+  line-height: 60rpx;
+}
+.pakin-btn {
+  background-color: #1E9FFF;
+}
+.pak-data-box {
+  background-color: #F1F1F1;
+  margin: 15rpx 15rpx 0rpx 15rpx;
+  width: 96%;
+  height: 70rpx;
+  border-radius: 20rpx;
+}
+.pak-data-box .box-top {
+  background-color: #FFFFFF;
+  height: 70rpx;
+  border-radius: 20rpx 20rpx 20rpx 20rpx;
+}
+.bg-false {
+  background-color: #FFFFFF;
+}
+.bg-true {
+  background-color: #ebebeb;
+}
+.data-list {
+  border-bottom: 1px solid #d8d8d8;
+  height: 180rpx;
+  margin: 15rpx;
+  border-radius: 20rpx;
+}
+.data-list:first-child {
+  margin-top: 20rpx;
+}
+.data-list:last-child {
+  margin-bottom: 160rpx;
+}
+.left-check-box {
+  display: inline-block;
+  float: left;
+  height: 100%;
+  width: 100rpx;
+  text-align: center;
+  line-height: 170rpx;
+}
+.data-list-left {
+  display: inline-block;
+  float: left;
+  height: 180rpx;
+  width: 500rpx;
+  color: #676767;
+}
+.matnr {
+  padding-top: 10rpx;
+}
+.data-list-right {
+  display: inline-block;
+  float: right;
+  width: 100rpx;
+  height: 180rpx;
+  line-height: 180rpx;
+}
+.data-list-right label {
+  display: inline-block;
+  float: left;
+  width: 100rpx;
+  height: 180rpx;
+}
+.revise-box {
+  width: 500rpx;
+  height: 500rpx;
+}
+.revise-box-top {
+  width: 100%;
+  height: 100rpx;
+  background-color: #fff;
+  padding: 10rpx;
+}
+.changeBox {
+  width: 100%;
+  height: 100rpx;
+  line-height: 120rpx;
+  text-align: center;
+  background-color: #FFF;
+  margin-top: 20rpx;
+  border-bottom: 1px solid #e3e3e3;
+}
+.text-box {
+  width: 100%;
+  height: 100rpx;
+  line-height: 120rpx;
+  text-align: center;
+  background-color: #FFF;
+  margin-top: 20rpx;
+  border-bottom: 1px solid #e3e3e3;
+}
+.changeBox .num-box {
+  display: inline-block;
+  float: left;
+}
+.changeBox button {
+  float: left;
+}
+.revise-box-buttom {
+  position: absolute;
+  width: 100%;
+  height: 100rpx;
+  line-height: 100rpx;
+  background-color: #FFFFFF;
+  bottom: 0;
+  text-align: center;
+}
+</style>

--
Gitblit v1.9.1