k94314517
2024-09-10 29fc101ccd5165a1c3d762ba3a240b1a0ab4ddfe
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -17,6 +17,7 @@
import com.doumee.dao.business.model.*;
import com.doumee.dao.openapi.request.*;
import com.doumee.dao.openapi.response.*;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.reqeust.*;
import com.doumee.dao.web.response.DriverHomeVO;
import com.doumee.dao.web.response.LineUpVO;
@@ -94,6 +95,15 @@
        platformJobMapper.deleteById(id);
    }
    @Override
    public void delete(Integer id) {
        platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
                        .set(PlatformJob::getIsdeleted,Constants.ONE)
                        .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey())
                .eq(PlatformJob::getId,id));
    }
    @Override
    public void delete(PlatformJob platformJob) {
        UpdateWrapper<PlatformJob> deleteWrapper = new UpdateWrapper<>(platformJob);
@@ -150,8 +160,10 @@
                .selectAs(Platform::getName,PlatformJob::getPlatformName)
                .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate)
                .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName)
                .selectAs(SystemUser::getUsername,PlatformJob::getOutUserName)
                .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
                .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
                .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId)
                .eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId())
                .eq(pageWrap.getModel().getCreator() != null, PlatformJob::getCreator, pageWrap.getModel().getCreator())
                .ge(pageWrap.getModel().getCreateDate() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()))
@@ -225,6 +237,12 @@
                .eq(pageWrap.getModel().getInType() != null, PlatformJob::getInType, pageWrap.getModel().getInType())
                .eq(pageWrap.getModel().getTotalNum() != null, PlatformJob::getTotalNum, pageWrap.getModel().getTotalNum())
                .eq(pageWrap.getModel().getPlatformGroupId() != null, PlatformJob::getPlatformGroupId, pageWrap.getModel().getPlatformGroupId())
                .apply(pageWrap.getModel().getQueryStatus() != null, " find_in_set(t.`STATUS`,'"+pageWrap.getModel().getQueryStatus()+"')")
                .ge(pageWrap.getModel().getBeginWorkDateStart() != null, PlatformJob::getStartDate, Utils.Date.getStart(pageWrap.getModel().getBeginWorkDateStart()))
                .le(pageWrap.getModel().getBeginWorkDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getBeginWorkDateEnd()))
                .eq(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh)
                .ne(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh)
        ;
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
@@ -275,7 +293,7 @@
                                .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()).or()
                                .apply(" ( t.status = "+Constants.PlatformJobStatus.TRANSFERING.getKey()+" and t.PLATFORM_GROUP_ID = "+pageWrap.getModel().getPlatformGroupId()+" ) ")
                )
                .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(new Date(),"yyyy-MM-dd"))
//                .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(new Date(),"yyyy-MM-dd"))
                .orderByDesc(PlatformJob::getStatus)
        ;
        IPage<PlatformJob> platformJobIPage = platformJobJoinMapper.selectJoinPage(page,PlatformJob.class,queryWrapper);
@@ -946,6 +964,38 @@
    /**
     * 授权离园
     */
    @Override
    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
    public void powerLevel(JobOperateDTO jobOperateDTO){
        if(Objects.isNull(jobOperateDTO)
                || Objects.isNull(jobOperateDTO.getJobId())){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId());
        if(Objects.isNull(platformJob)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转!");
        }
        PlatformJob oldPlatformJob = new PlatformJob();
        BeanUtils.copyProperties(platformJob,oldPlatformJob);
        platformJob.setOutUserId(jobOperateDTO.getLoginUserInfo().getId());
        platformJob.setOutHkdate(new Date());
        platformJob.setStatus(Constants.PlatformJobStatus.AUTHED_LEAVE.getKey());
        platformJob.setEditDate(new Date());
        platformJobMapper.updateById(platformJob);
        //存储操作日志
        savePlatformLog(Constants.PlatformJobLogType.AUTHED_LEAVE.getKey(),oldPlatformJob,platformJob ,
                Constants.PlatformJobLogType.AUTHED_LEAVE.getInfo());
        //TODO 授权车辆离场权限
    }
    /**
     * 月台相机推送 开始作业
     * @param jobOperateDTO
     */