优化调整
This commit is contained in:
@@ -2,6 +2,8 @@ package com.ruoyi.job.controller;
|
||||
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -14,6 +16,9 @@ import com.ruoyi.job.service.IMydoJobService;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
|
||||
import static com.ruoyi.common.TaskStatusCode.TASK_EP_DDJ_FINISH;
|
||||
import static com.ruoyi.common.TaskStatusCode.TASK_EP_SSJ_STOCKOUT_FINISH;
|
||||
|
||||
/**
|
||||
* 作业信息Controller
|
||||
*
|
||||
@@ -114,4 +119,23 @@ public class MydoJobController extends BaseController
|
||||
{
|
||||
return mydoJobService.OuthandFinish(jobIds);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 处理未正常移除的【堆垛机执行完成】或【出库到位】的遗留任务
|
||||
*/
|
||||
@Scheduled(fixedDelay = 3000)
|
||||
public void mydoJobHandler() {
|
||||
//此处堆垛机执行完成-【TASK_EP_DDJ_FINISH】或出库到位-【TASK_EP_SSJ_STOCKOUT_FINISH】的常量值相同,均可表示任务【已完成】
|
||||
//用其中一种状态查询所有标记为【已完成】的任务
|
||||
List<MydoJob> jobs = mydoJobService.selectMydoJobList(
|
||||
new MydoJob().builder().executionPhase(TASK_EP_DDJ_FINISH).build()
|
||||
);
|
||||
if (!jobs.isEmpty()) {
|
||||
for (MydoJob job : jobs) {
|
||||
mydoJobService.taskFinish(Long.valueOf(job.getTaskNo()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
package com.ruoyi.job.domain;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
import lombok.*;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
@@ -19,6 +14,7 @@ import com.ruoyi.common.core.domain.BaseEntity;
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString
|
||||
@Builder
|
||||
public class JobCallBack extends BaseEntity
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
@@ -36,7 +32,7 @@ public class JobCallBack extends BaseEntity
|
||||
|
||||
/** mydojob作业号 */
|
||||
@Excel(name = "mydojob作业号")
|
||||
private String mydojobId;
|
||||
private String mydoJobId;
|
||||
|
||||
/** 状态 */
|
||||
@Excel(name = "状态")
|
||||
|
||||
@@ -2,10 +2,7 @@ package com.ruoyi.job.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
import lombok.*;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
@@ -23,6 +20,7 @@ import java.util.List;
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ToString
|
||||
@Builder
|
||||
//@TableName("mydo_job_wcs")
|
||||
public class MydoJob extends BaseEntity
|
||||
{
|
||||
|
||||
@@ -13,7 +13,7 @@ import org.apache.ibatis.annotations.Param;
|
||||
* @author ruoyi
|
||||
* @date 2025-09-22
|
||||
*/
|
||||
public interface MydoJobMapper extends BaseMapper<MydoJob>
|
||||
public interface MydoJobMapper
|
||||
{
|
||||
/**
|
||||
* 查询作业信息
|
||||
|
||||
@@ -15,7 +15,7 @@ import org.apache.ibatis.annotations.Param;
|
||||
* @author ruoyi
|
||||
* @date 2025-09-22
|
||||
*/
|
||||
public interface IMydoJobService extends IService<MydoJob>
|
||||
public interface IMydoJobService
|
||||
{
|
||||
/**
|
||||
* 查询作业信息
|
||||
@@ -69,6 +69,8 @@ public interface IMydoJobService extends IService<MydoJob>
|
||||
|
||||
boolean ddjTaskFinish(Long rwh, Integer id);
|
||||
|
||||
boolean taskFinish(Long rwh);
|
||||
|
||||
boolean InvalidMydoJob(Long rwh, Integer id);
|
||||
|
||||
MydoJob selectMydoJobByExitList(List<String> exitList);
|
||||
|
||||
@@ -1,26 +1,24 @@
|
||||
package com.ruoyi.job.service.impl;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.lang.UUID;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.job.domain.JobCallBack;
|
||||
import com.ruoyi.job.service.IJobCallBackService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.ruoyi.job.mapper.MydoJobMapper;
|
||||
import com.ruoyi.job.domain.MydoJob;
|
||||
import com.ruoyi.job.service.IMydoJobService;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import static com.ruoyi.common.WmsTaskTypeCode.WMS_TASK_TYPE_STOCKIN;
|
||||
import static com.ruoyi.common.WmsTaskTypeCode.WMS_TASK_TYPE_STOCKOUT;
|
||||
|
||||
/**
|
||||
* 作业信息Service业务层处理
|
||||
@@ -29,7 +27,7 @@ import javax.annotation.PostConstruct;
|
||||
* @date 2025-09-22
|
||||
*/
|
||||
@Service
|
||||
public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> implements IMydoJobService
|
||||
public class MydoJobServiceImpl implements IMydoJobService
|
||||
{
|
||||
@Autowired
|
||||
private MydoJobMapper mydoJobMapper;
|
||||
@@ -132,6 +130,24 @@ public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> impl
|
||||
throw new RuntimeException(map.get("v_result").toString());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean taskFinish(Long rwh) {
|
||||
MydoJob task = selectMydoJobByTaskNo(rwh);
|
||||
insertHistory(task.getJobId());
|
||||
deleteMydoJobByJobId(task.getJobId());
|
||||
JobCallBack jobCallBack = new JobCallBack();
|
||||
jobCallBack.setType("2");
|
||||
jobCallBack.setMydoJobId(task.getJobId());
|
||||
jobCallBack.setStatus("0");
|
||||
jobCallBack.setTaskNo(Convert.toLong(task.getTaskNo()));
|
||||
jobCallBack.setCreateTime(new Date());
|
||||
jobCallBack.setTaskTypeCode(Integer.valueOf(task.getInOrOut()) < 20 ? WMS_TASK_TYPE_STOCKIN : WMS_TASK_TYPE_STOCKOUT);//todo ???
|
||||
jobCallBack.setReqCode(UUID.randomUUID().toString().replace("-", ""));
|
||||
jobCallBack.setTaskCode(task.getWmsTaskNo());
|
||||
jobCallBackService.insertJobCallBack(jobCallBack);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean InvalidMydoJob(Long rwh, Integer id) {
|
||||
@@ -198,18 +214,19 @@ public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> impl
|
||||
long jobIdNum = Long.parseLong(mydoJob.getInOrOut());
|
||||
if (jobIdNum > 20){
|
||||
jobCallBack.setType("2");
|
||||
jobCallBack.setTaskTypeCode(WMS_TASK_TYPE_STOCKOUT);//todo wms下发的任务类型
|
||||
}else{
|
||||
jobCallBack.setType("1");
|
||||
jobCallBack.setTaskTypeCode(WMS_TASK_TYPE_STOCKIN);//todo wms下发的任务类型
|
||||
}
|
||||
|
||||
jobCallBack.setMydojobId(mydoJob.getJobId());
|
||||
jobCallBack.setMydoJobId(mydoJob.getJobId());
|
||||
jobCallBack.setStatus("0");
|
||||
jobCallBack.setTaskNo(Convert.toLong(mydoJob.getTaskNo()));
|
||||
jobCallBack.setCreateTime(new Date());
|
||||
jobCallBack.setTaskCode(mydoJob.getWmsTaskNo());
|
||||
jobCallBack.setTaskTypeCode("");//todo wms下发的任务类型
|
||||
|
||||
jobCallBack.setReqCode(UUID.randomUUID().toString());
|
||||
// jobCallBack.setSpare1("0");
|
||||
jobCallBackService.insertJobCallBack(jobCallBack);
|
||||
|
||||
//移除实时任务
|
||||
@@ -241,12 +258,10 @@ public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> impl
|
||||
} else {
|
||||
jobCallBack.setType("1");
|
||||
}
|
||||
jobCallBack.setMydojobId(mydoJob.getJobId());
|
||||
jobCallBack.setMydoJobId(mydoJob.getJobId());
|
||||
jobCallBack.setStatus("0");
|
||||
jobCallBack.setTaskNo(Convert.toLong(taskNo));
|
||||
jobCallBack.setCreateTime(new Date());
|
||||
|
||||
// jobCallBack.setSpare1("0");
|
||||
jobCallBackService.insertJobCallBack(jobCallBack);
|
||||
mydoJobMapper.deleteMydoJobByTaskNo(taskNo);
|
||||
}
|
||||
@@ -254,6 +269,7 @@ public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> impl
|
||||
return AjaxResult.success("操作成功");
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<MydoJob> getInJobByEntranceId(String exitId) {
|
||||
return mydoJobMapper.getInJobByEntranceId(exitId);
|
||||
@@ -312,5 +328,4 @@ public class MydoJobServiceImpl extends ServiceImpl<MydoJobMapper, MydoJob> impl
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user