doum
3 天以前 bc09bc87234065abe7130b84c92f81f143f5f3e7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -247,7 +247,7 @@
                .selectAs(PlatformBooks::getId,PlatformJob::getBookId)
                .select("s.REALNAME",PlatformJob::getEditUserName)
                .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
                .leftJoin(PlatformGroup.class,PlatformGroup::getId,Platform::getGroupId)
                .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId)
                .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
                .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId)
                .leftJoin(PlatformBooks.class,PlatformBooks::getJobId,PlatformJob::getId)
@@ -2447,6 +2447,73 @@
    /**
     * 更换月台分钟
     * @param param
     */
    @Override
    public void changPlatformGroup(PlatformJob param, LoginUserInfo loginUser){
        if(param.getId() ==null || param.getPlatformGroupId()==null) {
            throw  new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        PlatformJob model  = platformJobMapper.selectById(param.getId());
        if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
            throw  new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"【市公司外协车卸货】作业类型不支持月台组切换");
        }
        //   WAIT_CONFIRM(0, "待确认","待确认" ),
        //        WART_SIGN_IN(1, "待签到","待签到" ),
        //        WAIT_CALL(2, "已签到","已签到"),
        if(!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey())
                &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey())
                &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转,不支持月台组切换!");
        }
        PlatformGroup group = platformGroupMapper.selectById(param.getPlatformGroupId());
        if(Objects.isNull(group)|| Constants.equalsInteger(group.getIsdeleted(),Constants.ONE)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到月台组信息");
        }
        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zycxh)
                ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxcxh)){
            if( ! Constants.equalsInteger(group.getType(),Constants.ZERO)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"该作业只能在【安泰物流卸货】类型的月台组下作业");
            }
        }
        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zyczh)
                ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxczh)){
            if( ! Constants.equalsInteger(group.getType(),Constants.ONE)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"该作业只能在【安泰物流装货】类型的月台组下作业");
            }
        }
        if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)
                && !Constants.equalsInteger(group.getType(),Constants.TWO)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"该作业只能在【市公司卸货】类型的月台组下作业");
        }
        PlatformJob platformJob = new PlatformJob();
        BeanUtils.copyProperties(model,platformJob);
        platformJob.setPlatformGroupId(param.getPlatformGroupId());
        platformJob.setEditDate(new Date());
        platformJob.setTagVirtual(Constants.ONE);
        platformJob.setTagVirtualUser(platformJob.getEditor());
        platformJob.setTagVirtualTime(platformJob.getEditDate());
        platformJob.setEditor(loginUser.getId());
       int flag =  platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
                .set(PlatformJob::getEditDate,platformJob.getEditDate())
                .set(PlatformJob::getTagVirtualTime,platformJob.getTagVirtualTime())
                .set(PlatformJob::getEditor,platformJob.getEditor())
                .set(PlatformJob::getPlatformGroupId,param.getPlatformGroupId())
                .set(PlatformJob::getTagVirtualUser,platformJob.getEditor())
                .set(PlatformJob::getPlatformId,null)//置空分配的月台信息
                .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey(),
                        Constants.PlatformJobStatus.WART_SIGN_IN.getKey(),
                        Constants.PlatformJobStatus.WAIT_CALL.getKey())
                .eq(PlatformJob::getId,param.getId()));
        //存储操作日志
        savePlatformLog(Constants.PlatformJobLogType.CHANGE_GROUP.getKey(),model,platformJob,
                Constants.PlatformJobLogType.CHANGE_GROUP.getInfo().replace("{data}",param.getPlatformGroupName()).replace("{data1}",group.getName()));
    }
    /**
     * 手动完成作业
     * @param jobIdList
     */