From 477d7cdf4379047fd7f4cc66b0bef12830b7beb7 Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期三, 31 十二月 2025 14:13:34 +0800
Subject: [PATCH] Merge branch 'Dev' of http://101.37.171.70:10101/r/~jhz/STUWMS into Dev
---
pages/simaheyi/BarCodeCheck_SN.vue | 874 ++++++++++++++++++++++++++++++++++++++
pages.json | 6
pages/simaheyi/table.vue | 487 +++++++++++++++++++++
pages/index/index.vue | 8
4 files changed, 1,374 insertions(+), 1 deletions(-)
diff --git a/pages.json b/pages.json
index 22f041a..114813e 100644
--- a/pages.json
+++ b/pages.json
@@ -1284,6 +1284,12 @@
"navigationBarTitleText": "涓夌爜鍚堜竴"
}
},
+ {
+ "path": "pages/simaheyi/BarCodeCheck_SN",
+ "style": {
+ "navigationBarTitleText": "鍥涚爜鍚堜竴"
+ }
+ },
{
"path": "pages/ZLGL/shengchanrukujiaoyan/QC_LastPieceCheckBill_v2",
"style": {
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 8f37c02..59b9ab9 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -307,7 +307,13 @@
id: 35,
hidden: false,
},
-
+ {
+ img: '../../static/icon/icon8.png',
+ text: '鍥涚爜鍚堜竴',
+ url: `/pages/simaheyi/BarCodeCheck_SN`,
+ id: 36,
+ hidden: false,
+ },
{
img: '../../static/icon/icon8.png',
text: '涓婃ā鍗�',
diff --git a/pages/simaheyi/BarCodeCheck_SN.vue b/pages/simaheyi/BarCodeCheck_SN.vue
new file mode 100644
index 0000000..baa67c8
--- /dev/null
+++ b/pages/simaheyi/BarCodeCheck_SN.vue
@@ -0,0 +1,874 @@
+<template>
+ <view class="form">
+ <view class="form-base-info">
+ <view class="form-item">
+ <view class="title">鏍堟澘鐮�</view>
+ <!-- 鎸夌収婧愬崟鐗╂枡鏍峰紡娣诲姞disabled绫诲拰绂佺敤灞炴�� -->
+ <view class="right" :class="disableBarCodePallet ? 'disabled' : ''">
+ <input type="text" :focus="HBarCodePalletFocus" v-model="HBarCode_Pallet"
+ @confirm="CheckBarcode(HBarCode_Pallet,1)" :disabled="disableBarCodePallet" />
+ </view>
+ <view class="right-icon">
+ <uni-icons class="right-icon" :class="disableBarCodePallet ? 'disabled':''" type="scan"
+ style="background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" size="20"
+ @click="toScanCode" :disabled="disableBarCodePallet"></uni-icons>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">鐩殑浠撶爜</view>
+ <!-- 鎸夌収婧愬崟鐗╂枡鏍峰紡娣诲姞disabled绫诲拰绂佺敤灞炴�� -->
+ <view class="right" :class="disableBarCodeDest ? 'disabled' : ''">
+ <input type="text" :focus="HBarCodeDestFocus" v-model="HBarCode_Destination"
+ @confirm="CheckBarcode(HBarCode_Destination,2)" :disabled="disableBarCodeDest" />
+ </view>
+ <view class="right-icon">
+ <uni-icons class="right-icon" :class="disableBarCodeDest ? 'disabled':''" type="scan"
+ style="background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" size="20"
+ @click="toScanCode" :disabled="disableBarCodeDest"></uni-icons>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">涓鐮�</view>
+ <!-- 鎸夌収婧愬崟鐗╂枡鏍峰紡娣诲姞disabled绫诲拰绂佺敤灞炴�� -->
+ <view class="right" :class="disableBarCodeMiddle ? 'disabled' : ''">
+ <input type="text" :focus="HBarCodeMiddleFocus" v-model="HBarCode_MiddleBox "
+ @confirm="CheckBarcode(HBarCode_MiddleBox,3)" :disabled="disableBarCodeMiddle" />
+ </view>
+ <view class="right-icon">
+ <uni-icons class="right-icon" :class="disableBarCodeMiddle ? 'disabled':''" type="scan"
+ style="background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" size="20"
+ @click="toScanCode" :disabled="disableBarCodeMiddle"></uni-icons>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">浜у搧鐮�</view>
+ <!-- 鎸夌収婧愬崟鐗╂枡鏍峰紡娣诲姞disabled绫诲拰绂佺敤灞炴�� -->
+ <view class="right" :class="disableBarCodeSN ? 'disabled' : ''">
+ <input type="text" :focus="HBarCodeSNFocus" v-model="HBarCode_SN"
+ @confirm="CheckBarcode(HBarCode_SN,4)" :disabled="disableBarCodeSN" />
+ </view>
+ <view class="right-icon">
+ <uni-icons class="right-icon" :class="[disableBarCodeSN ? 'disabled':'']" type="scan"
+ style="background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" size="20"
+ @click="toScanCode" :disabled="disableBarCodeSN"></uni-icons>
+ </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>
+ <!-- 澶嶆牳淇℃伅 -->
+ <view v-if="tabs == 0">
+ <zb-table id="list-table" :checked-highlight="true" :fit="true" :style="{height: `${listTableHeight}px`}"
+ :columns="columns" :data="listData" :show-header="true" :border="true" :row-key="row => row.index"
+ @toggleRowSelection="handleSelect" @toggleAllSelection="handleSelectAll"
+ @rowClick="onTableRowClickHandler" />
+ </view>
+ <!-- 鍗曟嵁淇℃伅 -->
+ <view v-if="tabs == 1">
+
+ <view class="bill-info">
+ <view class="form-item">
+ <view class="title">鍗曟嵁鏃ユ湡</view>
+ <view class="right">
+ <uni-datetime-picker type="date" v-model="hform.HDate">
+ <input type="text" v-model="hform.HDate" />
+ </uni-datetime-picker>
+ </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="right disabled">
+ <input type="text" disabled :value="hform.HBillNo" />
+ </view>
+ </view>
+ </view>
+ <view class="bill-info">
+ <view class="form-item">
+ <view class="title">鍗曟嵁ID</view>
+ <view class="right disabled">
+ <input type="text" disabled :value="hform.HInterID" />
+ </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>
+ </view>
+ </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>
+ </view>
+</template>
+<script>
+ import dayjs from 'dayjs'
+ import {
+ getUserInfo
+ } from "../../utils/auth";
+ import {
+ CommonUtils
+ } from "@/utils/common.js"
+ import {
+ MpaasScan
+ } from "@/utils/mpaasScan.js"
+
+ export default {
+ data() {
+ return {
+ // ==================== 甯冨眬璁$畻鐩稿叧 ====================
+ // 璁$畻鍒楄〃楂樺害
+ bottomBtnTop: 0,
+ listTableTop: 0,
+
+ // ==================== 鐣岄潰鐘舵�佹帶鍒� ====================
+ EnableSubmit: true, // 鏄惁鍏佽鎻愪氦
+ disableBarCodePallet: false, // 鏍堟澘鐮佺鐢ㄧ姸鎬�
+ disableBarCodeDest: false, // 鐩殑浠撶爜绂佺敤鐘舵��
+ disableBarCodeMiddle: false, // 涓鐮佺鐢ㄧ姸鎬�
+ disableBarCodeSN: false, // 浜у搧鐮佺鐢ㄧ姸鎬�
+ HBarCodePalletFocus: false, // 鏍堟澘鐮佽緭鍏ユ鑱氱劍鐘舵��
+ HBarCodeDestFocus: false, // 鐩殑浠撶爜杈撳叆妗嗚仛鐒︾姸鎬�
+ HBarCodeMiddleFocus: false, // 涓鐮佽緭鍏ユ鑱氱劍鐘舵��
+ HBarCodeSNFocus: false, // 浜у搧鐮佽緭鍏ユ鑱氱劍鐘舵��
+ tabs: 0, // 褰撳墠閫夐」鍗�(0:鍗曟嵁淇℃伅,1:瑁呯淇℃伅)
+
+
+ // ==================== 涓氬姟鏁版嵁 ====================
+ HBarCode_Pallet: '', // 鏍堟澘鐮�
+ HBarCode_Destination: '', //鐩殑浠撶爜
+ HBarCode_MiddleBox: '', //涓鐮�
+ HBarCode_SN: '', // 浜у搧鐮�
+ HBillType: '1283', // 鍗曟嵁绫诲瀷
+ HBillSubType: '1', // 瀛愮被鍨嬶紙1瑁呯銆�2缁勬墭锛�
+ OperationType: 1, // 鎿嶄綔绫诲瀷锛�1鏂板銆�2浠庣紦瀛樺垪琛ㄤ腑杩斿洖锛�
+ HMaterNumber_Pack: "", // 鎵樻潯鐮佸搴旂墿鏂欎唬鐮�
+ HBarCode_Pallet_Temp: "", // 浠庣紦瀛樺垪琛ㄤ腑杩斿洖鏍堟澘鐮�
+ BarCodeType: 1, // 鏉$爜绫诲瀷(1:瑁呯,2:缁勬墭)
+
+
+ // ==================== 鍒楄〃鏁版嵁 ====================
+ listOption: [], // 鍒楄〃閫夐」
+ listData: [], // 琛ㄦ牸鏁版嵁
+ selectedRows: [], // 琛ㄦ牸閫変腑鐨勬暟鎹�
+ columns: [ // 琛ㄦ牸鍒楅厤缃�
+ {
+ type: 'selection',
+ fixed: true,
+ width: 50
+ },
+ {
+ name: 'index',
+ label: '搴忓彿',
+ width: 60,
+ hidden: true
+ },
+ {
+ name: '鏍堟澘鐮�',
+ label: '鏍堟澘鐮�',
+ width: 200
+ },
+ {
+ name: '鐩殑浠撶爜',
+ label: '鐩殑浠撶爜',
+ width: 200
+ },
+ {
+ name: '涓鐮�',
+ label: '涓鐮�',
+ width: 200
+ },
+ {
+ name: 'SN鐮�',
+ label: 'SN鐮�',
+ width: 200
+ }
+ ],
+
+ // ==================== 涓昏〃鍗曟暟鎹� ====================
+ hform: {
+ HDate: dayjs(new Date()).format('YYYY-MM-DD'), // 鍗曟嵁鏃ユ湡
+ HMaker: getUserInfo()['Czymc'], // 鍒跺崟浜�
+ HBillNo: '', // 鍗曟嵁鍙�
+ HInterID: '', // 鍗曟嵁ID
+ HStockOrgName: uni.getStorageSync("Organization"), // 缁勭粐鍚嶇О
+ HStockOrgID: uni.getStorageSync("OrganizationID"), // 缁勭粐ID
+ },
+
+ // ==================== 绯荤粺閰嶇疆 ====================
+ HModName: "Sc_PackUnionBill_Packing_PDA", // 妯″潡鍚嶇О
+ ModRightName: "CE_PackUnionBill_Packing", // 妯″潡鏉冮檺鍙傛暟
+ titleData: [] // 涓嶉渶瑕佹樉绀虹殑瀛楁
+ }
+ },
+ components: {
+
+ },
+ // ==================== 璁$畻灞炴�� ====================
+ computed: {
+ // 璁$畻琛ㄦ牸楂樺害
+ listTableHeight: {
+ get() {
+ return this.bottomBtnTop - this.listTableTop - 10
+ }
+ }
+ },
+
+ // ==================== 鏂规硶 ====================
+ methods: {
+ // 澶嶉�夋鍙樺寲澶勭悊
+ checkboxGroupChangeHandler(e) {
+ let checkBoxValues = Array.from(e.detail.value)
+ this.hform.HQualityApproval = checkBoxValues.includes('qualityApproval')
+ },
+
+ // 琛ㄦ牸琛岀偣鍑诲鐞�
+ onTableRowClickHandler(row, index) {
+ if (!this.listData[index].checked) {
+ this.$set(this.listData[index], 'checked', true)
+ } else {
+ this.listData[index].checked = !this.listData[index].checked
+ }
+ },
+
+ // 鍒锋柊SN鐮佽緭鍏ユ鐒︾偣
+ async HBarCodeSNFocusRefresh() {
+ this.HBarCode_SN = ''
+ this.HBarCodeSNFocus = false
+ await this.$nextTick()
+ this.HBarCodeSNFocus = true
+ },
+
+ // 鍒锋柊鏍堟澘鐮佽緭鍏ユ鐒︾偣
+ async HBarCodePalletFocusRefresh() {
+ this.HBarCode_Pallet = ''
+ this.HBarCodePalletFocus = false
+ await this.$nextTick()
+ this.HBarCodePalletFocus = true
+ },
+
+ // 鍒锋柊鐩殑浠撶爜杈撳叆妗嗙劍鐐�
+ async HBarCodeDestFocusRefresh() {
+ this.HBarCode_Destination = ''
+ this.HBarCodeDestFocus = false
+ await this.$nextTick()
+ this.HBarCodeDestFocus = true
+ },
+
+ // 鍒锋柊涓鐮佽緭鍏ユ鐒︾偣
+ async HBarCodeMiddleFocusRefresh() {
+ this.HBarCode_MiddleBox = ''
+ this.HBarCodeMiddleFocus = false
+ await this.$nextTick()
+ this.HBarCodeMiddleFocus = true
+ },
+
+ // 鎵弿鏍堟澘鐮�
+ toScanCode() {
+ MpaasScan.scanCode((scanCode) => {
+ this.HBarCode_Pallet = scanCode
+ this.CheckBarcode(this.HBarCode_Pallet, 1)
+ })
+ },
+
+ // 鎵弿鐩殑浠撶爜
+ toScanCode() {
+ MpaasScan.scanCode((scanCode) => {
+ this.HBarCode_Destination = scanCode
+ this.CheckBarcode(this.HBarCode_Destination, 2)
+ })
+ },
+
+ // 鎵弿涓鐮�
+ toScanCode() {
+ MpaasScan.scanCode((scanCode) => {
+ this.HBarCode_MiddleBox = scanCode
+ this.CheckBarcode(this.HBarCode_MiddleBox, 3)
+ })
+ },
+
+ // 鎵弿浜у搧SN鐮�
+ toScanCode() {
+ MpaasScan.scanCode((scanCode) => {
+ this.HBarCode_SN = scanCode
+ this.CheckBarcode(this.HBarCode_SN, 4)
+ })
+ },
+
+ // 鎵潯鐮佹牳瀵规牎楠屼俊鎭�
+ CheckBarcode(HBarCode, HBarCodeType) {
+ CommonUtils.doRequest2({
+ url: '/CheckBarcodeController/Get_BarCode_BarcodeCheck',
+ data: {
+ HBarCode_Pallet: this.HBarCode_Pallet,
+ HBarCode_Destination: this.HBarCode_Destination,
+ HBarCode_MiddleBox: this.HBarCode_MiddleBox,
+ HBarCode_SN: this.HBarCode_SN,
+ HBarCodeType: HBarCodeType,
+ HInterID: this.hform.HInterID,
+ HBillNo: this.hform.HBillNo,
+ HMaker: this.hform.HMaker
+ },
+ resFunction: (res) => {
+ let {
+ data,
+ count,
+ Message,
+ list
+ } = res.data
+ if (count == 1) {
+ CommonUtils.playSound(1)
+
+ if(HBarCodeType == 1){
+ //澶勭悊鎴愬姛鍚庤仛鐒﹀埌鐩殑浠撶爜杈撳叆妗�
+ this.HBarCodeDestFocusRefresh()
+ }else if(HBarCodeType == 2){
+ //澶勭悊鎴愬姛鍚庤仛鐒﹀埌涓鐮佽緭鍏ユ
+ this.HBarCodeMiddleFocusRefresh()
+ }else if(HBarCodeType == 3){
+ //澶勭悊鎴愬姛鍚庤仛鐒﹀埌SN鐮佽緭鍏ユ
+ this.HBarCodeSNFocusRefresh()
+ }else if(HBarCodeType == 4){
+ //澶勭悊鎴愬姛鍚庤仛鐒﹀埌SN鐮佽緭鍏ユ
+ this.HBarCodeSNFocusRefresh()
+ }
+
+ //this.DisBillEntryList();
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+
+ this.listData = [];
+ for (let i = 0; i < data.length; i++) {
+ this.listData.push(Object.assign(data[i], {
+ index: i
+ }))
+ }
+ } else {
+ CommonUtils.playSound(0)
+ this.HBarCodePalletFocusRefresh()
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ }
+ }
+ })
+ },
+
+ // 鏍规嵁浜у搧鐮佽幏鍙栦俊鎭�
+ GetMeesageByBarCode(HBarCode) {
+ let HBarCode_Pallet = this.HBarCode_Pallet
+ let sOldBarCode = this.HBarCode_SN
+ let HDeleteFlag = sOldBarCode.substring(0, 1)
+ let sBarCode = sOldBarCode.slice(1)
+
+ if (!HBarCode_Pallet) {
+ return uni.showToast({
+ icon: 'none',
+ title: '鏍堟澘鐮佷笉鑳戒负绌猴紝璇峰厛鎵弿鎵樻潯鐮侊紒'
+ })
+ }
+ if (HDeleteFlag == '*') {
+ // 鍒犻櫎鏉$爜閫昏緫
+ if (!sBarCode) {
+ return uni.showToast({
+ icon: 'none',
+ title: '璇锋壂鎻忚鍒犻櫎鐨勬潯鐮�'
+ })
+ } else {
+ this.HBarCodeSNFocusRefresh()
+ }
+ CommonUtils.doRequest2({
+ url: '/WEBSController/set_DelPackUnionBill_Temp_Pack_Json',
+ data: {
+ "HInterID": this.hform.HInterID,
+ "HBarCode": sBarCode,
+ "HBillType": this.HBillType
+ },
+ resFunction: (res) => {
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ CommonUtils.playSound(1)
+ this.tabs = 1
+ this.DisBillEntryList()
+ } else {
+ CommonUtils.playSound(0)
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ }
+ }
+ })
+ } else {
+ // 鏂板鏉$爜閫昏緫
+ let sBarCode = this.HBarCode_SN
+ if (!sBarCode) {
+ return uni.showToast({
+ icon: 'none',
+ title: '鏉$爜涓嶈兘涓虹┖锛岃鎵弿鏉$爜锛�'
+ })
+ }
+ CommonUtils.doRequest2({
+ url: '/WEBSController/Get_BarCode_PackUnionBill_New_Json_Cus',
+ data: {
+ "HBarCode": sBarCode,
+ "HInterID": this.hform.HInterID,
+ "HBillNo": this.hform.HBillNo,
+ "HBillType": this.HBillType,
+ "HBillSubType": this.HBillSubType,
+ "HBarCode_Pallet": this.HBarCode_Pallet,
+ "HMaterNumber_Pack": this.HMaterNumber_Pack,
+ "HMaker": this.hform.HMaker,
+ "HStockOrgID": this.hform.HStockOrgID
+ },
+ resFunction: (res) => {
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ CommonUtils.playSound(1)
+ this.tabs = 1
+ this.HBarCodeSNFocusRefresh()
+ this.DisBillEntryList()
+ } else {
+ CommonUtils.playSound(0)
+ this.HBarCodeSNFocusRefresh()
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ }
+ }
+ })
+ }
+ },
+ // 鏄剧ず鍗曟嵁鏄庣粏鍒楄〃
+ DisBillEntryList() {
+ CommonUtils.doRequest2({
+ url: '/WEBSController/GetBillEntry_Tmp_Pack_Json',
+ data: {
+ "HInterID": this.hform.HInterID,
+ "HBillNo": this.hform.HBillNo,
+ "HBillType": this.HBillType
+ },
+ resFunction: (res) => {
+ let {
+ count,
+ data,
+ Message
+ } = res.data
+ this.listData = []
+ if (count == 1) {
+ for (let i = 0; i < data.length; i++) {
+ this.listData.push(Object.assign(data[i], {
+ index: i
+ }))
+ }
+
+
+ } else {
+
+ }
+ }
+ })
+ },
+
+ // 琛ㄦ牸閫夋嫨澶勭悊
+ handleSelect(selected, array) {
+ this.selectedRows = array
+ },
+
+ // 琛ㄦ牸鍏ㄩ�夊鐞�
+ handleSelectAll(selected, array) {
+ this.selectedRows = array
+ },
+ // 鎾斁鎻愮ず闊�
+ playSound(type) {
+ const innerAudioContext = uni.createInnerAudioContext();
+ innerAudioContext.src = type == 1 ? '/static/success.wav' : '/static/jingbao.wav';
+ innerAudioContext.play();
+ },
+
+
+ // 鑾峰彇鏈�澶у崟鎹彿
+ getMaxNo() {
+ CommonUtils.doRequest2({
+ url: "/WEBSController/GetMaxBillNoAndID_Json",
+ data: {
+ "HBillType": this.HBillType
+ },
+ resFunction: (d) => {
+ let {
+ count,
+ data,
+ Message
+ } = d.data
+ if (count == 1) {
+ this.hform.HInterID = data[0].HInterID;
+ this.hform.HBillNo = data[0].HBillNo
+ } else {
+ uni.showModal({
+ title: "娓╅Θ鎻愮ず",
+ showCancel: false,
+ content: Message
+ })
+ }
+ }
+ })
+ },
+
+ // 鎻愪氦鍓嶆鏌�
+ submitPreCheck() {
+ if (CommonUtils.isEmpty(this.hform.HInterID)) {
+ uni.showToast({
+ icon: 'none',
+ title: '鍗曟嵁鍐呯爜鑾峰彇澶辫触锛岄敊璇殑鍗曟嵁鍐呯爜锛�'
+ })
+ return false
+ }
+ 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() {
+ if (this.selectedRows.length != 1) {
+ return uni.showToast({
+ icon: 'none',
+ title: '璇烽�夋嫨涓�琛岃褰曪紝杩涜鍒犻櫎锛�'
+ })
+ }
+ uni.showModal({
+ title: '鍒犻櫎纭',
+ content: '纭瑕佸垹闄ら�変腑琛屾墍鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠!',
+ success: ({
+ confirm
+ }) => {
+ if (confirm) {
+ CommonUtils.doRequest2({
+ url: '/WEBSController/set_DelPackUnionBill_Temp_Pack_Json',
+ data: {
+ HInterID: this.hform.HInterID,
+ HBillType: this.HBillType,
+ HBarCode: this.selectedRows[0].HBarCode_SN
+ },
+ resFunction: (res) => {
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ CommonUtils.playSound(1)
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ this.DisBillEntryList()
+ } else {
+ CommonUtils.playSound(0)
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ }
+ }
+ })
+ }
+ }
+ })
+ },
+
+ // 鎻愪氦鍗曟嵁
+ cmdSubmit() {
+ let checkRes = this.submitPreCheck()
+ if (!checkRes) return
+
+ this.EnableSubmit = false
+ CommonUtils.doRequest2({
+ url: '/CheckBarcodeController/Save_BarCode_BarcodeCheck',
+ data: {
+ "HInterID": this.hform.HInterID,
+ "HBillNo": this.hform.HBillNo
+ },
+ resFunction: (res) => {
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ uni.showModal({
+ title: '娓╅Θ鎻愮ず',
+ content: Message,
+ confirmText: "鏂板",
+ cancelText: '鍏抽棴',
+ success: ({
+ confirm,
+ cancel
+ }) => {
+ if (confirm) {
+ uni.redirectTo({
+ url: "/pages/sanmaheyi/BarCodeCheck"
+ })
+ }
+ if (cancel) {
+ uni.navigateBack()
+ }
+ }
+ })
+ } else {
+ uni.showToast({
+ icon: 'none',
+ title: Message
+ })
+ }
+ }
+ })
+ },
+
+ // 閫�鍑洪〉闈�
+ cmdExit() {
+ uni.navigateBack()
+ }
+ },
+
+ // ==================== 鐢熷懡鍛ㄦ湡 ====================
+ async onReady() {
+ // 璁$畻琛ㄦ牸楂樺害
+ // #ifndef MP-WEIXIN
+ let query = uni.createSelectorQuery().in(this)
+ query.select("#bottom-btn").boundingClientRect((data) => {
+ if (data) this.bottomBtnTop = data.top
+ }).exec();
+ query.select("#list-table").boundingClientRect((data) => {
+ if (data) this.listTableTop = data.top
+ }).exec();
+ // #endif
+ },
+
+ onLoad(e) {
+ // 鍒濆鍖栧弬鏁�
+ this.BarCodeType = e.BarCodeType || 1
+ this.OperationType = e.OperationType || 1
+ this.HBarCode_Pallet = e.HBarCode_Pallet_Temp || ""
+ this.hform.HSourceBillNo = e.HSourceBillNo || ""
+ this.HBarCode_Destination = e.HBarCode_Destination || ""
+ this.HBarCode_MiddleBox = e.HBarCode_MiddleBox || ""
+
+ // 鏍规嵁鎿嶄綔绫诲瀷鍒濆鍖栨暟鎹�
+ if (this.OperationType == 1) {
+ this.getMaxNo() // 鏂板妯″紡锛氳幏鍙栨柊鍗曟嵁鍙�
+ // 鍒濆鍖栨椂鑱氱劍鍒版簮鍗曞崟鍙�
+ this.HSourcebillNoFocus = true
+ } else if (this.OperationType == 2) {
+ this.disableBarCodePallet = false
+ this.disableBarCodeDest = false
+ this.disableBarCodeMiddle = false
+ this.disableBarCodeSN = false
+ this.CheckBarcode(this.HBarCode_Pallet, 1) // 缂撳瓨妯″紡锛氬姞杞藉凡鏈夋暟鎹�
+ this.DisBillEntryList()
+ this.tabs = 0
+ }
+
+ // 榛樿鑱氱劍鍒版爤鏉跨爜杈撳叆妗�
+ this.HBarCodePalletFocusRefresh()
+ },
+ onUnload() {
+ uni.$off('BillSelectComplete')
+ }
+ }
+</script>
+
+<style lang="scss">
+ input {
+ width: inherit;
+ padding: 8rpx 20rpx;
+ font-size: 30rpx;
+ }
+
+ .form {
+ display: flex;
+ flex-direction: column;
+ gap: 20rpx;
+
+ .form-base-info {
+ display: flex;
+ flex-direction: column;
+ gap: 10rpx;
+ box-sizing: border-box;
+ padding: 30rpx;
+ }
+
+ .bill-info {
+ display: flex;
+ flex-direction: column;
+ gap: 10rpx;
+ box-sizing: border-box;
+ padding: 16rpx 30rpx;
+ }
+
+ .form-item {
+ display: flex;
+ flex-direction: row;
+ gap: 10rpx;
+
+ .title {
+ width: 5rem;
+ flex-shrink: 0;
+ }
+
+ .right {
+ flex: 1;
+ border-radius: 22rpx;
+ border: 1px solid #acacac;
+ }
+
+ .disabled {
+ border: 1px solid #e4e4e4;
+ background-color: #e4e4e4;
+ }
+
+ .right-icon {
+ flex-shrink: 0;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+
+ .icon-wrapper {
+ background-color: #3A78FF;
+ border-radius: 100%;
+ width: 52rpx;
+ height: 52rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ flex-shrink: 0;
+
+ .uni-icons {
+ color: #fff !important;
+ }
+ }
+
+ .icon-wrapper[disabled] {
+ background-color: rgba(228, 228, 228, 1);
+ pointer-events: none;
+ touch-action: none;
+ }
+ }
+ }
+
+ .tabs {
+ width: 100%;
+ display: flex;
+ border-bottom: 1px solid #ddd;
+ margin: 20rpx 0;
+
+ view {
+ width: 25%;
+ font-size: 30rpx;
+ color: #555;
+ text-align: center;
+ padding: 16rpx 0;
+ }
+
+ .on {
+ color: #3a78ff;
+ font-weight: bold;
+ border-bottom: 3px solid #3a78ff;
+ }
+ }
+
+ .bottom-btn {
+ width: 100%;
+ box-sizing: border-box;
+ // height: 120rpx;
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ background-color: #fff;
+ box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+ padding: 30rpx 40rpx 40rpx 40rpx;
+ display: flex;
+ flex-direction: row;
+ gap: 10rpx;
+
+ button {
+ border-radius: 50rpx;
+ width: 180rpx;
+ height: 66rpx;
+ line-height: 66rpx;
+ font-size: 28rpx;
+ }
+
+ .btn-a {
+ background-color: #3A78FF;
+ color: #fff;
+ }
+
+ .btn-b {
+ background-color: #41a863;
+ color: #fff;
+ }
+
+ .btn-c {
+ background-color: #acacac;
+ color: #fff;
+ // position: absolute;
+ // right: 120rpx;
+ }
+
+ .btn-d {
+ background-color: #ff8901;
+ color: #fff;
+ }
+ }
+
+ .right-icon.disabled {
+ background-color: #ccc !important;
+ color: #666 !important;
+ cursor: not-allowed;
+ }
+</style>
\ No newline at end of file
diff --git a/pages/simaheyi/table.vue b/pages/simaheyi/table.vue
new file mode 100644
index 0000000..b08c7ea
--- /dev/null
+++ b/pages/simaheyi/table.vue
@@ -0,0 +1,487 @@
+<template>
+ <view class="content">
+ <view class="tabs">
+ <view :class="tabs == 0 ? 'on':''" @tap="changeTab(0)">缂撳瓨鍒楄〃</view>
+ </view>
+
+ <view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+
+ <view class="form" v-if="tabs == 0">
+ <view class="buttons" @tap="add">
+ <uni-icons type="plus" style="margin-right: 10rpx;" size="22"></uni-icons>鏂板
+ </view>
+ </view>
+
+ <view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+
+ <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
+ <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+ @tap="showDetail = showDetail==index?-1:index">
+ <view class="card-detail">
+ <view class="detail" v-if="item.鎵樻潯鐮�">
+ <text>鎵樻潯鐮侊細</text>{{item.鎵樻潯鐮亇}
+ </view>
+ <view class="detail" v-if="item.HSourceBillNo">
+ <text>婧愬崟鍙凤細</text>{{item.HSourceBillNo}}
+ </view>
+ <view class="detail" v-if="item.鍒跺崟浜�">
+ <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+ </view>
+ <view class="detail" v-if="item.鍒跺崟鏃ユ湡">
+ <text>鍒跺崟鏃ユ湡锛�</text>{{ item.鍒跺崟鏃ユ湡.split('T')[0] }}
+ </view>
+ <view class="detail" v-if="item.缁勭粐">
+ <text>缁勭粐锛�</text>{{item.缁勭粐}}
+ </view>
+ </view>
+
+ <view class="more">
+ <view class="part" style="border-right: 1px solid #eee;color: #3a78ff;" @tap.stop="edit(item)">
+ <uni-icons type="compose" style="color: #3a78ff;margin-right: 10rpx;" size="18"></uni-icons>缂栬緫
+ </view>
+ <view class="part" style="color: #da0000;" @tap.stop="del(item)">
+ <uni-icons type="trash" style="color: #da0000;margin-right: 10rpx;" size="18"></uni-icons>鍒犻櫎
+ </view>
+ </view>
+ </uni-card>
+ </view>
+ <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==1">
+ <uni-card :title="item.鏃ユ湡" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+ @tap="showDetail = showDetail==index?-1:index">
+ <view class="card-detail">
+ <view class="detail" v-if="item.鐘舵��">
+ <text>鐘舵�侊細</text>{{item.鐘舵�亇}
+ </view>
+ <view class="detail" v-if="item.鍒跺崟浜�">
+ <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+ </view>
+ <view class="detail" v-if="item.鏁伴噺">
+ <text>鏁伴噺锛�</text>{{item.鏁伴噺}}
+ </view>
+ <view class="detail" v-if="item.婧愬崟鍗曞彿">
+ <text>婧愬崟鍗曞彿锛�</text>{{item.婧愬崟鍗曞彿}}
+ </view>
+ <view class="detail" v-if="item.鐗╂枡浠g爜">
+ <text>鐗╂枡浠g爜锛�</text>{{item.鐗╂枡浠g爜}}
+ </view>
+ <view class="detail" v-if="item.鐗╂枡鍚嶇О">
+ <text>鐗╂枡鍚嶇О锛�</text>{{item.鐗╂枡鍚嶇О}}
+ </view>
+ <view class="detail" v-if="item.瑙勬牸鍨嬪彿">
+ <text>瑙勬牸鍨嬪彿锛�</text>{{item.瑙勬牸鍨嬪彿}}
+ </view>
+ <view class="detail" v-if="item.缁勭粐">
+ <text>缁勭粐锛�</text>{{item.缁勭粐}}
+ </view>
+ </view>
+
+ <view class="more">
+ <view class="part" style="color: #3a78ff;width: 100%;" @tap.stop="qrCodeDisplay(item)">
+ <uni-icons type="scan" style="color: #3a78ff;margin-right: 10rpx;" size="18"></uni-icons>鏄剧ず浜岀淮鐮�
+ </view>
+ <view class="part" style="color: #d98d00;width: 100%;" @tap.stop="revoke(item)">
+ <uni-icons type="undo" style="color: #d98d00;margin-right: 10rpx;" size="18"></uni-icons>鎾ら攢
+ </view>
+ </view>
+ </uni-card>
+ </view>
+
+ <view class="over" v-if="!listData || listData.length == 0">鏆傛棤鏁版嵁</view>
+ <view class="over" v-if="listData.length != 0 && listData.length != showList.length">鍔犺浇涓�...</view>
+ <view class="over" v-if="listData.length != 0 && listData.length == showList.length">宸插埌搴�</view>
+ <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+ </view>
+</template>
+
+<script>
+ import dayjs from "dayjs";
+ import {
+ getUserInfo
+ } from "@/utils/auth.js";
+ import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+ export default {
+ data() {
+ return {
+ userInfo: getUserInfo(),
+ serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+ tabs: 0,
+ urls: '/WEBSController/GetSc_PackUnionBill_TempList_Json',
+ MvarReportTitle: '瑁呯鍗曠紦瀛樺垪琛�',
+ hform: {
+ // HBillNo: '',
+ // HSourceBillNo: '',
+ HBillType: 3783,
+ HMaker: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ },
+ sWhere: '',
+ listData: [],
+ showList: [],
+ showDetail: -1,
+
+ page: 1,
+ }
+ },
+ components: {
+ BarCodePopupVue
+ },
+ onShow() {
+ //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
+ this.CheckModRight()
+ this.changeTab(0)
+ console.log(this.userInfo, uni.getStorageSync('HUserName'))
+ },
+ onReachBottom: function() {
+ this.page++
+ setTimeout(() => {
+ this.showList = this.showList.concat(this.getPage(this.page, this.listData))
+ }, 100)
+ },
+ onPullDownRefresh: function() {
+ this.clear()
+ setTimeout(() => {
+ uni.stopPullDownRefresh();
+ }, 1000);
+ },
+ methods: {
+ async qrCodeDisplay(item) {
+ this.$refs.barcodePopup.setCodeInfo(item.HBillNo)
+ await this.$nextTick()
+ this.$refs.barcodePopup.open()
+ },
+ CheckModRight() {
+ uni.request({
+ url: this.serverUrl + '/WEBSController/CheckModRight_Json',
+ data: {
+ ModRightName: 'CE_PackUnion',
+ HUserName: uni.getStorageSync('HUserName')
+ },
+ success: (res) => {
+ if (res.data.count == 1) {} else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ },
+ getPage(page, list) {
+ let sindex = (parseInt(page) - 1) * 20
+ let eindex = parseInt(page) * 20
+ let newList = list.slice(sindex, eindex)
+ return newList
+ },
+ changeTab(e) {
+ this.tabs = e
+ this.page = 1
+ this.showList = []
+
+ if (this.tabs == 0) {
+ this.urls = '/WEBSController/GetSc_PackUnionBill_TempList_Json'
+ }
+ // if(this.tabs == 1){
+ // this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
+ // }
+ this.getList()
+ },
+ getList() {
+ uni.showLoading({
+ title: '鍔犺浇涓�...'
+ })
+ uni.request({
+ url: this.serverUrl + this.urls,
+ data: this.hform,
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.listData = res.data.data
+ this.showList = this.getPage(this.page, this.listData)
+ setTimeout(() => {
+ uni.hideLoading()
+ }, 1000)
+ } else {
+ uni.hideLoading()
+ this.listData = []
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ },
+ search() {
+ this.sWhere = ''
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ console.log(this.hform)
+ this.getList()
+ },
+ clear() {
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ this.sWhere = ''
+ this.hform = {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3783,
+ HMaker: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ }
+ this.getList()
+ },
+ add() {
+ uni.navigateTo({
+ url: './form?OperationType=1'
+ })
+ },
+ //缂栬緫
+ edit(item) {
+ console.log(item)
+ uni.navigateTo({
+ url: './form?OperationType=2&HBarCode_Pack_Temp=' + item["HBarCode_Pack"] + '&HSourceBillNo=' +item["HSourceBillNo"],
+ })
+ },
+ //鍒犻櫎
+ del(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/WEBSController/DeleteTemp_PackUnionBill_Json',
+ data: {
+ HInterID: item.HInterID,
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ //鎾ら攢
+ revoke(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '鏄惁纭鎾ら攢',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/WEBSController/set_DeleteICStockBillAndWMS_Json',
+ data: {
+ HInterID: item.HInterID,
+ HBillNo: item.鍗曟嵁鍙�,
+ HBillType: this.hform.HBillType,
+ HMaker: uni.getStorageSync('HUserName'),
+ MvarReportTitle: this.MvarReportTitle,
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .form {
+ width: 640rpx;
+ margin: 20rpx auto;
+ margin-top: 90rpx;
+ }
+
+ .tabs {
+ width: 100%;
+ position: fixed;
+ left: 0;
+ z-index: 9;
+ display: flex;
+ background-color: #e5e5e5;
+
+ view {
+ width: 50%;
+ font-size: 30rpx;
+ color: #333;
+ text-align: center;
+ padding: 16rpx 0;
+ }
+
+ .on {
+ color: #3a78ff;
+ font-weight: bold;
+ border-bottom: 3px solid #3a78ff;
+ }
+ }
+
+ .buttons {
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ margin-top: 20rpx;
+
+ button {
+ border-radius: 50rpx;
+ width: 180rpx;
+ height: 66rpx;
+ line-height: 66rpx;
+ font-size: 28rpx;
+ }
+
+ .btn-a {
+ background-color: #acacac;
+ color: #fff;
+ }
+
+ .btn-b {
+ background-color: #41a863;
+ color: #fff;
+ }
+
+ .btn-c {
+ background-color: #3a78ff;
+ color: #fff;
+ }
+ }
+
+ .form-item {
+ display: flex;
+ align-items: center;
+ font-size: 28rpx;
+ padding: 6rpx 0;
+
+ .title {
+ width: 180rpx;
+
+ 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;
+ }
+ }
+
+ .list {
+ width: 100%;
+
+ .card-detail {
+ width: 100%;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ line-height: 120%;
+
+ .detail {
+ // width: 50%;
+ font-size: 26rpx;
+ margin-bottom: 12rpx;
+ color: #555;
+ margin-right: 20rpx;
+
+ text {
+ color: #999;
+ font-size: 26rpx;
+ }
+ }
+ }
+
+ .more {
+ color: #888;
+ font-size: 26rpx;
+ display: flex;
+ border-top: 1px solid #eee;
+ padding-top: 20rpx;
+
+ .part {
+ width: 50%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+ }
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.1