diff --git a/src/common/config.js b/src/common/config.js new file mode 100644 index 00000000..1288b666 --- /dev/null +++ b/src/common/config.js @@ -0,0 +1,2 @@ +export const overPagePrint="overPage_print" +export const overPageTemplate="overPage_Template" \ No newline at end of file diff --git a/src/common/detail.js b/src/common/detail.js index 08e9cc2a..b6ed44a3 100644 --- a/src/common/detail.js +++ b/src/common/detail.js @@ -36,6 +36,7 @@ export function getTreeDataSource(dataList) { s.packList = childList.filter(c => c.parentPackingNumber == s.packingNumber) s.packList.forEach(pac => { pac.scaned = false; + pac.scanDate = new Date(); }) }) ) @@ -79,6 +80,7 @@ export function createItemInfo(detail) { export function createDetailInfo(data) { data.scaned = false; + data.scanDate = new Date(); let detail = data; detail.packList = []; return detail; diff --git a/src/mycomponents/print/print.vue b/src/mycomponents/print/print.vue new file mode 100644 index 00000000..6906cad3 --- /dev/null +++ b/src/mycomponents/print/print.vue @@ -0,0 +1,133 @@ + + + + + + + diff --git a/src/pages/count/job/countLightDetail.vue b/src/pages/count/job/countLightDetail.vue index 26d623be..92ca127f 100644 --- a/src/pages/count/job/countLightDetail.vue +++ b/src/pages/count/job/countLightDetail.vue @@ -325,6 +325,8 @@ const getScanResult = (result) => { selectItem.handleQty = Number(qty) selectItem.packQty = pack.packQty selectItem.packUnit = pack.packUnit + selectItem.locationCode = fromLocationCode.value + selectItem.fromLocationCode = fromLocationCode.value countQtyEditRef.value.openEditPopupShowSeconds(selectItem, null) selectItem.countTime = new Date() @@ -392,6 +394,7 @@ const createAddDetailInfo = (pack, qty) => { countQty: 0, balanceQty: Number(qty), fromLocationCode: fromLocationCode.value, + locationCode: fromLocationCode.value, creator: store.id, countTime: new Date() } @@ -414,6 +417,8 @@ const commit = () => { if (!item.scaned) { item.scaned = true item.handleQty = 0 + item.locationCode = fromLocationCode.value + item.fromLocationCode = fromLocationCode.value } }) submitJob() diff --git a/src/pages/fg/coms/comNoReceiptPopup.vue b/src/pages/fg/coms/comNoReceiptPopup.vue new file mode 100644 index 00000000..f157d138 --- /dev/null +++ b/src/pages/fg/coms/comNoReceiptPopup.vue @@ -0,0 +1,437 @@ + + + + + diff --git a/src/pages/fg/receiptNoPlan.vue b/src/pages/fg/receiptNoPlan.vue index 3be70c57..ce2acc7a 100644 --- a/src/pages/fg/receiptNoPlan.vue +++ b/src/pages/fg/receiptNoPlan.vue @@ -1,398 +1,483 @@ - -const closeScanMessage = () => { - scanPopupGetFocus() -} -const confirm = (data) => { - dataContent.value = data + - - - - - diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue index 14910dd5..faba1d38 100644 --- a/src/pages/index/index.vue +++ b/src/pages/index/index.vue @@ -58,6 +58,7 @@ import { ref, getCurrentInstance, nextTick } from 'vue' import { onLoad, onShow, onNavigationBarButtonTap, onReady, onBackPress, onReachBottom, onPullDownRefresh, onHide, onUnload } from '@dcloudio/uni-app' import { getDictionaryItem, getPackageUnitList, getMainMessage, getSwitchByCode, getBusinessType } from '@/api/request2.js' +import { overPagePrint, overPageTemplate } from '@/common/config.js' import { useCountStore } from '@/store' // 获取自定义的store const store = useCountStore() diff --git a/src/pages/issue/record/issueRecord.vue b/src/pages/issue/record/issueRecord.vue index af5acd89..c2936d30 100644 --- a/src/pages/issue/record/issueRecord.vue +++ b/src/pages/issue/record/issueRecord.vue @@ -478,6 +478,7 @@ export default { showCommitSuccessMessage(hint) { this.$refs.comMessage.showSuccessMessage(hint, (res) => { this.clearData() + this.openScanPopup() }) }, diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue index 9941069d..26aa51a1 100644 --- a/src/pages/login/index.vue +++ b/src/pages/login/index.vue @@ -68,6 +68,7 @@ import { onLoad, onShow, onNavigationBarButtonTap, onReady } from '@dcloudio/uni-app' import { ref, getCurrentInstance } from 'vue' import { getCaptchaImage } from '@/api/request2.js' +import storage from '@/common/utils/storage' import { useCountStore } from '@/store' // 获取自定义的store const store = useCountStore() @@ -99,8 +100,7 @@ onReady(() => { }) onLoad(() => { tenantValue.value = tenantArray.value[0].value - uni.clearStorageSync() - uni.clearStorage() // 清除缓存 + storage.clearStorage() if (import.meta.env.VITE_USER_NODE_ENV === 'development') { username.value = 'admin' password.value = 'win123456' diff --git a/src/pages/package/record/overPackageRecord.vue b/src/pages/package/record/overPackageRecord.vue index 98c3830d..e8c7945c 100644 --- a/src/pages/package/record/overPackageRecord.vue +++ b/src/pages/package/record/overPackageRecord.vue @@ -3,6 +3,7 @@ + @@ -78,6 +79,7 @@ import packageTarget from '@/mycomponents/package/packageTarget.vue' import recordComDetailCard from '@/mycomponents/record/recordComDetailCard.vue' import packUnit from '@/mycomponents/qty/packUnit.vue' import winComScanBalance from '@/mycomponents/scan/winComScanBalance.vue' +import print from '@/mycomponents/print/print.vue' import { useCountStore } from '@/store' // 获取自定义的store @@ -107,6 +109,7 @@ const scanPopup = ref() const scanLocationCode = ref() const toPackUnit = ref() const comMessageRef = ref() +const printService = ref() onLoad(() => { getBusinessType() }) @@ -180,6 +183,10 @@ const handleConfirm = (fromLocationCode) => { } const getScanResult = (result) => { setData(result) + + setTimeout((res) => { + printService.value.setDefaultData() + }) } const setData = (result) => { diff --git a/src/pages/purchaseReceipt/job/receiptDetail.vue b/src/pages/purchaseReceipt/job/receiptDetail.vue index df8863ef..86f7be06 100644 --- a/src/pages/purchaseReceipt/job/receiptDetail.vue +++ b/src/pages/purchaseReceipt/job/receiptDetail.vue @@ -36,7 +36,7 @@ - + @@ -60,7 +60,7 @@ import { ref, getCurrentInstance, nextTick } from 'vue' import { onLoad, onShow, onNavigationBarButtonTap, onReady, onBackPress, onReachBottom, onPullDownRefresh } from '@dcloudio/uni-app' import { purchaseReceiptJobSubmit, getPurchaseReceiptJobDetail, takePurchaseReceiptJob, cancleTakePurchaseReceiptJob, productDismantleJobClose, getPutawayJobList } from '@/api/request2.js' -import { goHome, getCurrDateTime, getPackingNumberAndBatch, compareAsc, navigateBack, getSwitchInfoByCode } from '@/common/basic.js' +import { goHome, getCurrDateTime, getPackingNumberAndBatch, compareDesc, navigateBack, getSwitchInfoByCode } from '@/common/basic.js' import { getDirectoryItemArray } from '@/common/directory.js' @@ -220,14 +220,17 @@ const getScanResult = (result) => { } else { itemDetail.forEach((item) => { item.scaned = true + itemDetail.scanDate = new Date() item.handleQty = item.qty item.toLocationCode = toLocationCode.value }) - detailSource.value[0].subList.sort(compareAsc('scaned')) // 按扫描信息排序 calcHandleQty(detailSource.value) + detailSource.value[0].subList.sort(compareAsc('scaneDate')) // 按扫描信息排序 continueScan() } } else if (result.label.labelType == 'PurchaseLabel') { + let packingNumber = result.package.number + const parentpackingNumber = result.package.parentNumber const { packingNumber } = result.label const { batch } = result.label const { qty } = result.label @@ -238,34 +241,26 @@ const getScanResult = (result) => { // 物料在列表中 var itemDetail = detail.subList.find((r) => r.packingNumber == packingNumber && r.batch == batch) if (itemDetail == undefined) { - let isExit - for (const subItem of detail.subList) { - var item - for (const pack of subItem.packList) { - if (pack.packingNumber == packingNumber && pack.batch == batch) { - item = pack - isExit = pack - break - } - } - if (item != undefined) { - subItem.scaned = true - subItem.handleQty = 0 - item = undefined - } - } - - if (isExit == undefined) { + itemDetail = detail.subList.find((r) => r.packingNumber == parentpackingNumber && r.batch == batch) + if (itemDetail == undefined) { showMessage(`箱码【${packingNumber}】、批次【${batch}】不在列表中`) - } else if (isExit.scaned) { - showMessage(`箱码【${packingNumber}】已经扫描`) } else { - isExit.scaned = true - isExit.handleQty = Number(result.label.qty) - isExit.toLocationCode = toLocationCode - isExit.labelQty = Number(result.label.qty) + const pack = itemDetail.packList.find((p) => p.packingNumber == packingNumber && p.batch == batch) + if (pack == undefined) { + showMessage(`箱码【${packingNumber}】、批次【${batch}】不在列表中`) + } else if (pack.scaned) { + pack.scanDate = new Date() + showMessage(`箱码【${packingNumber}】已经扫描`) + } else { + pack.scaned = true + pack.scanDate = new Date() + pack.handleQty = Number(result.label.qty) + pack.toLocationCode = toLocationCode.value + pack.labelQty = Number(result.label.qty) + } + calcTreeHandleQty(detailSource.value) + itemDetail.packList.sort(compareDesc('scanDate')) // 按扫描信息排序 } - calcTreeHandleQty(detailSource.value) } else { let scanedLength = 0 itemDetail.packList.forEach((res) => { @@ -273,21 +268,26 @@ const getScanResult = (result) => { scanedLength++ } }) - if (itemDetail.scaned && scanedLength == itemDetail.packList.length) { + if (itemDetail.scaned && scanedLength == itemDetail.packList.length) {gth == itemDetail + .packList.length) { + isExit.scanDate = new Date(); showMessage(`箱码【${packingNumber}】已经扫描`) } else { itemDetail.scaned = true + itemDetail.scanDate = new Date(); detailSource.value[0].subList.sort(compareAsc('scaned')) // 按扫描信息排序 itemDetail.handleQty = Number(result.label.qty) itemDetail.toLocationCode = toLocationCode.value itemDetail.labelQty = Number(result.label.qty) itemDetail.packList.forEach((pac) => { pac.scaned = true + pac.scanDate = new Date(); pac.handleQty = Number(pac.qty) pac.toLocationCode = toLocationCode.value }) calcTreeHandleQty(detailSource.value) + detailSource[0].subList.sort(compareDesc('scanDate')) const test = detailSource.value continueScan() } diff --git a/src/pages/repleinsh/record/repleinshRecord.vue b/src/pages/repleinsh/record/repleinshRecord.vue index dfa934d7..560d77cd 100644 --- a/src/pages/repleinsh/record/repleinshRecord.vue +++ b/src/pages/repleinsh/record/repleinshRecord.vue @@ -9,7 +9,7 @@ @@ -501,6 +501,7 @@ export default { showCommitSuccessMessage(hint) { this.$refs.comMessage.showSuccessMessage(hint, (res) => { this.clear() + this.openScanPopup() }) }, @@ -511,6 +512,7 @@ export default { this.detailSource = [] this.toLocationCode = '' this.itemCode = '' + this.recommendList = [] } } } diff --git a/src/pages/setter/index.vue b/src/pages/setter/index.vue index 82be4849..325ed5a0 100644 --- a/src/pages/setter/index.vue +++ b/src/pages/setter/index.vue @@ -34,6 +34,7 @@ import { onLoad } from '@dcloudio/uni-app' import { logout, getUserProfile } from '@/api/request2.js' import { clearCacheData } from '@/common/directory.js' import { removeToken } from '@/common/utils/auth' +import storage from '@/common/utils/storage' // #ifdef APP-PLUS import { appUpdate } from '@/common/appUpdate.js' @@ -94,7 +95,7 @@ function handlerlogout() { } function clearStorage() { - uni.clearStorageSync() + storage.clearStorage() removeToken() }