1. 增加导入配料单的数量提示。

2. 减去配料单物料描述的非空筛选。
3. 增加拣选界面的盘点任务遗留查询。
This commit is contained in:
梁州 2025-04-14 09:06:15 +08:00
parent f60c8c6295
commit e41905ab78
6 changed files with 170 additions and 159 deletions

View File

@ -11,11 +11,11 @@
import store from '@/store' import store from '@/store'
import {ref, reactive} from 'vue'; import {ref, reactive} from 'vue';
import {uploadExcelProduct} from '@/api/excel.js' import {uploadExcelProduct} from '@/api/excel.js'
import { ElMessage } from 'element-plus' import {errorBox, successBox} from '@/utils/myMessageBox';
import { errorBox } from '@/utils/myMessageBox';
import {sizeFormatter} from '@/utils/formatter.js' import {sizeFormatter} from '@/utils/formatter.js'
import {loading} from '@/utils/loading.js' import {loading} from '@/utils/loading.js'
import {getHashString} from '@/utils/hashUtils.js' import {getHashString} from '@/utils/hashUtils.js'
var currentHash = '' var currentHash = ''
const file = ref() const file = ref()
const uploadForm = reactive({ const uploadForm = reactive({
@ -63,10 +63,7 @@ const uploadProduct = () => {
loading.close() loading.close()
currentHash = '' currentHash = ''
if (res.data.code == 0) { if (res.data.code == 0) {
ElMessage({ successBox(res.data.message)
message: '上传成功',
type: 'success',
})
clearFileInfos() clearFileInfos()
} else { } else {
errorBox(res.data.message) errorBox(res.data.message)

View File

@ -11,11 +11,11 @@
import store from '@/store' import store from '@/store'
import {ref, reactive} from 'vue'; import {ref, reactive} from 'vue';
import {uploadExcelSingleProduct} from '@/api/excel.js' import {uploadExcelSingleProduct} from '@/api/excel.js'
import { ElMessage } from 'element-plus' import {errorBox, successBox} from '@/utils/myMessageBox';
import { errorBox } from '@/utils/myMessageBox';
import {sizeFormatter} from '@/utils/formatter.js' import {sizeFormatter} from '@/utils/formatter.js'
import {loading} from '@/utils/loading.js' import {loading} from '@/utils/loading.js'
import {getHashString} from '@/utils/hashUtils.js' import {getHashString} from '@/utils/hashUtils.js'
var currentHash = '' var currentHash = ''
const file = ref() const file = ref()
const uploadForm = reactive({ const uploadForm = reactive({
@ -63,10 +63,7 @@ const uploadSingleProduct = () => {
loading.close() loading.close()
currentHash = '' currentHash = ''
if (res.data.code == 0) { if (res.data.code == 0) {
ElMessage({ successBox(res.data.message)
message: '上传成功',
type: 'success',
})
clearFileInfos() clearFileInfos()
} else { } else {
errorBox(res.data.message) errorBox(res.data.message)

View File

@ -166,7 +166,6 @@ public class ImportExcelEasyPoi extends BaseImportExcelEasyPoi implements IImpor
|| StringUtils.isEmpty(productRawData.getProductId()) || StringUtils.isEmpty(productRawData.getProductId())
|| productRawData.getQuantity1Pair() == null || productRawData.getQuantity1Pair() == null
|| StringUtils.isEmpty(productRawData.getGoodsId()) || StringUtils.isEmpty(productRawData.getGoodsId())
|| StringUtils.isEmpty(productRawData.getGoodsDesc())
|| productRawData.getQuantityOfPairs() == null || productRawData.getQuantityOfPairs() == null
|| StringUtils.isEmpty(productRawData.getBoxNo())) { || StringUtils.isEmpty(productRawData.getBoxNo())) {
continue; continue;
@ -210,7 +209,8 @@ public class ImportExcelEasyPoi extends BaseImportExcelEasyPoi implements IImpor
tAppImageService.saveOrUpdateBatch(imageList); tAppImageService.saveOrUpdateBatch(imageList);
// 保存导入file记录 // 保存导入file记录
saveFileVo(fileVo); saveFileVo(fileVo);
return BaseWmsApiResponse.success("导入配料单成功。"); return BaseWmsApiResponse.success("导入配料单成功。\n原始" + productRawDatas.size() + "条,成功:" + productList.size()
+ "条。\n图纸原始:" + imageRawDatas.size() + "条,成功:" + imageList.size() + "条。");
} catch (Exception e) { } catch (Exception e) {
// 回滚事务 // 回滚事务
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@ -245,7 +245,6 @@ public class ImportExcelEasyPoi extends BaseImportExcelEasyPoi implements IImpor
|| StringUtils.isEmpty(productRawData.getSingleProductId()) || StringUtils.isEmpty(productRawData.getSingleProductId())
|| productRawData.getQuantity1Pair() == null || productRawData.getQuantity1Pair() == null
|| StringUtils.isEmpty(productRawData.getGoodsId()) || StringUtils.isEmpty(productRawData.getGoodsId())
|| StringUtils.isEmpty(productRawData.getGoodsDesc())
|| productRawData.getQuantityOfPairs() == null || productRawData.getQuantityOfPairs() == null
|| StringUtils.isEmpty(productRawData.getBoxNo())) { || StringUtils.isEmpty(productRawData.getBoxNo())) {
continue; continue;
@ -289,7 +288,8 @@ public class ImportExcelEasyPoi extends BaseImportExcelEasyPoi implements IImpor
tAppImageService.saveOrUpdateBatch(imageList); tAppImageService.saveOrUpdateBatch(imageList);
// 保存导入file记录 // 保存导入file记录
saveFileVo(fileVo); saveFileVo(fileVo);
return BaseWmsApiResponse.success("导入服务件配料单成功。"); return BaseWmsApiResponse.success("导入服务件配料单成功。\n原始" + productRawDatas.size() + "条,成功:" + productList.size()
+ "条。\n图纸原始:" + imageRawDatas.size() + "条,成功:" + imageList.size() + "条。");
} catch (Exception e) { } catch (Exception e) {
// 回滚事务 // 回滚事务
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

View File

@ -56,6 +56,7 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
private final ITAppKanbanService appKanbanService;// 看板服务 private final ITAppKanbanService appKanbanService;// 看板服务
private final ITAppWorkRecordService appWorkRecordService;// 工作记录服务 private final ITAppWorkRecordService appWorkRecordService;// 工作记录服务
private final ITAppPickPlanService appPickPlanService;// 拣选计划服务 private final ITAppPickPlanService appPickPlanService;// 拣选计划服务
private final ITAppInventoryService appInventoryService;// 盘点任务服务
private final AppCommon appCommon; private final AppCommon appCommon;
/** /**
@ -419,6 +420,14 @@ public class KateWorkControllerServiceImpl implements IKateWorkControllerService
if (taskConfirmVo != null) { if (taskConfirmVo != null) {
return BaseWmsApiResponse.warn("当前载具还有其他拣选任务,请切换到出库界面进行拣配。"); return BaseWmsApiResponse.warn("当前载具还有其他拣选任务,请切换到出库界面进行拣配。");
} }
// 判断当前载具是否还有盘点任务
List<String> goodsIds = stockList.stream().map(TAppStock::getGoodsId).distinct().toList();
List<TAppInventory> inventoryTasks = appInventoryService.list(new LambdaQueryWrapper<TAppInventory>()
.eq(TAppInventory::getVehicleId, thisPickTask.getVehicleId())
.in(TAppInventory::getGoodsId, goodsIds));
if (inventoryTasks != null && !inventoryTasks.isEmpty()) {
return BaseWmsApiResponse.warn("当前载具还有盘点任务,请切换到盘点界面进行拣配。");
}
} else { } else {
// 取消后续拣选任务 // 取消后续拣选任务
conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand()); conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand());

View File

@ -737,6 +737,14 @@ public class TaskControllerServiceImpl implements ITaskControllerService {
if (resultVo != null) { if (resultVo != null) {
return BaseWmsApiResponse.warn("当前载具还有工作,请切换到拣配界面进行拣配。"); return BaseWmsApiResponse.warn("当前载具还有工作,请切换到拣配界面进行拣配。");
} }
// 判断当前载具是否还有盘点任务
List<String> goodsIds = stockList.stream().map(TAppStock::getGoodsId).distinct().toList();
List<TAppInventory> inventoryTasks = appInventoryService.list(new LambdaQueryWrapper<TAppInventory>()
.eq(TAppInventory::getVehicleId, thisPickTask.getVehicleId())
.in(TAppInventory::getGoodsId, goodsIds));
if (inventoryTasks != null && !inventoryTasks.isEmpty()) {
return BaseWmsApiResponse.warn("当前载具还有盘点任务,请切换到盘点界面进行拣配。");
}
} else { } else {
// 取消后续拣选任务 // 取消后续拣选任务
conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand()); conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand());

View File

@ -9,7 +9,7 @@ spring:
# username: developer # username: developer
# password: developer # password: developer
# 本地 # 本地
# url: jdbc:mysql://localhost:3306/wms_kate_wuxi_test?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true # url: jdbc:mysql://localhost:3306/wms_kate_wuxi?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true
# username: root # username: root
# password: liangzhou # password: liangzhou
# 卡特服务器 # 卡特服务器