| | |
| | | * 自动生成库位明细 |
| | | */ |
| | | @Transactional(rollbackFor = Exception.class) |
| | | // @Scheduled(cron = "0/25 * * * * ?") |
| | | @Scheduled(cron = "0/25 * * * * ?") |
| | | public void insertRandomMats() { |
| | | List<Loc> list = locService.list(new LambdaQueryWrapper<Loc>().eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type)); |
| | | for (Loc loc : list) { |
| | |
| | | * @description: 自动完成盘点功能 |
| | | * @version 1.0 |
| | | */ |
| | | @Scheduled(cron = "0/35 * * * * ?") |
| | | @Scheduled(cron = "0/25 * * * * ?") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void autoCheckComplete() { |
| | | //获取任务列表中,为盘点出库的任务 |
| | |
| | | * @description: 自动生成任务 |
| | | * @version 1.0 |
| | | */ |
| | | @Scheduled(cron = "0/25 * * * * ?") |
| | | @Scheduled(cron = "0/5 * * * * ?") |
| | | public void genRun() { |
| | | Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.AUTO_RUN_CHECK_ORDERS)); |
| | | if (!Boolean.parseBoolean(config.getVal())) { |
| | |
| | | //获取任务列表中,为盘点出库的任务 |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() |
| | | .in(Task::getTaskType, Arrays.asList(TaskType.TASK_TYPE_CHECK_OUT.type, TaskType.TASK_TYPE_CHECK_IN.type))); |
| | | if (tasks.size() >= 6) { |
| | | if (tasks.size() >= 30) { |
| | | return; |
| | | } |
| | | String autoRunArea = configService.getVal("AUTO_RUN_AREA", String.class); |
| | |
| | | |
| | | // // 出库,需要校验工作档是否存在,存在就说明站点处于忙碌状态 |
| | | // this.runLocToSta(locGroupList, staGroupList, staTaskMemo); |
| | | // // 移库 |
| | | // // 移库locGroupList |
| | | // this.runLocToLoc(locGroupList, staTaskMemo); |
| | | } |
| | | |
| | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 生成移库任务 |
| | | * @param |
| | | * @param |
| | | */ |
| | | // 移库 |
| | | private void runLocToLoc(List<Integer> locGroupList, String staTaskMemo) { |
| | | @Scheduled(cron = "0/7 * * * * ?") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void runLocToLoc() { |
| | | Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.AUTO_RUN_CHECK_ORDERS)); |
| | | if (!Boolean.parseBoolean(config.getVal())) { |
| | | return; |
| | | } |
| | | List<Integer> locGroupList = new ArrayList<>(); |
| | | //获取任务列表中,为盘点出库的任务 |
| | | List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>() |
| | | .eq(Task::getTaskType, TaskType.TASK_TYPE_LOC_MOVE.type)); |
| | | if (!tasks.isEmpty() && tasks.size() >= 10) { |
| | | return; |
| | | } |
| | | String autoRunArea = configService.getVal("AUTO_RUN_AREA", String.class); |
| | | if (Cools.isEmpty(autoRunArea)) { |
| | | return; |
| | | } |
| | | for (char c : autoRunArea.toCharArray()) { |
| | | switch (c) { |
| | | case '1': |
| | | locGroupList = LocGroupConstant.FAR_RIGHT_LOC_ROW_LIST; |
| | | break; |
| | | case '2': |
| | | locGroupList = LocGroupConstant.RIGHT_LOC_ROW_LIST; |
| | | break; |
| | | case '3': |
| | | locGroupList = LocGroupConstant.MIDDLE_LOC_ROW_LIST; |
| | | break; |
| | | case '4': |
| | | locGroupList = LocGroupConstant.LEFT_LOC_ROW_LIST; |
| | | break; |
| | | case '5': |
| | | locGroupList = LocGroupConstant.FAR_LEFT_LOC_ROW_LIST; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | |
| | | Integer startRow = Collections.min(locGroupList); |
| | | Integer endRow = Collections.max(locGroupList); |
| | | |
| | | String memo = "DEMO_LOC_" + startRow + "-" + endRow; |
| | | |
| | | |
| | | // STOCK |
| | | LambdaQueryWrapper<Loc> stockWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type); |
| | | if (null != startRow) { |