堆垛机调度初始化

This commit is contained in:
liuhanqing
2025-09-22 16:12:18 +08:00
parent 1b44d350b0
commit baed4a312e
58 changed files with 3486 additions and 1228 deletions

View File

@@ -0,0 +1,104 @@
package com.ruoyi.job.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.job.domain.MydoJob;
import com.ruoyi.job.service.IMydoJobService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 作业信息Controller
*
* @author ruoyi
* @date 2025-09-22
*/
@RestController
@RequestMapping("/job/mydoJob")
public class MydoJobController extends BaseController
{
@Autowired
private IMydoJobService mydoJobService;
/**
* 查询作业信息列表
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:list')")
@GetMapping("/list")
public TableDataInfo list(MydoJob mydoJob)
{
startPage();
List<MydoJob> list = mydoJobService.selectMydoJobList(mydoJob);
return getDataTable(list);
}
/**
* 导出作业信息列表
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:export')")
@Log(title = "作业信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, MydoJob mydoJob)
{
List<MydoJob> list = mydoJobService.selectMydoJobList(mydoJob);
ExcelUtil<MydoJob> util = new ExcelUtil<MydoJob>(MydoJob.class);
util.exportExcel(response, list, "作业信息数据");
}
/**
* 获取作业信息详细信息
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:query')")
@GetMapping(value = "/{jobId}")
public AjaxResult getInfo(@PathVariable("jobId") String jobId)
{
return success(mydoJobService.selectMydoJobByJobId(jobId));
}
/**
* 新增作业信息
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:add')")
@Log(title = "作业信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody MydoJob mydoJob)
{
return toAjax(mydoJobService.insertMydoJob(mydoJob));
}
/**
* 修改作业信息
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:edit')")
@Log(title = "作业信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody MydoJob mydoJob)
{
return toAjax(mydoJobService.updateMydoJob(mydoJob));
}
/**
* 删除作业信息
*/
@PreAuthorize("@ss.hasPermi('job:mydoJob:remove')")
@Log(title = "作业信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{jobIds}")
public AjaxResult remove(@PathVariable String[] jobIds)
{
return toAjax(mydoJobService.deleteMydoJobByJobIds(jobIds));
}
}

View File

@@ -0,0 +1,90 @@
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 com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 作业信息对象 mydo_job_wcs
*
* @author ruoyi
* @date 2025-09-22
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class MydoJob extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 任务ID */
private String jobId;
/** 任务状态 */
@Excel(name = "任务状态")
private String status;
/** 任务号 */
@Excel(name = "任务号")
private String taskNo;
/** 巷道ID */
@Excel(name = "巷道ID")
private String roadwayId;
/** 货位ID */
@Excel(name = "货位ID")
private String cargoSpaceId;
/** 目标巷道ID */
@Excel(name = "目标巷道ID")
private String targetRoadwayId;
/** 目标货位ID */
@Excel(name = "目标货位ID")
private String targetCargoSpaceId;
/** 优先级 */
@Excel(name = "优先级")
private Long priority;
/** 执行阶段 */
@Excel(name = "执行阶段")
private String executionPhase;
/** 任务类型 */
@Excel(name = "任务类型")
private String inOrOut;
/** 开始时间 */
@Excel(name = "开始时间")
private String startTime;
/** 结束时间 */
@Excel(name = "结束时间")
private String finishTime;
/** 入口ID */
@Excel(name = "入口ID")
private String entranceId;
/** 出口ID */
@Excel(name = "出口ID")
private String exitId;
/** 仓库ID */
@Excel(name = "仓库ID")
private String warehouseId;
/** 重分标志 */
@Excel(name = "重分标志")
private String faultFlag;
private String trayCode;
}

View File

@@ -0,0 +1,66 @@
package com.ruoyi.job.mapper;
import java.util.HashMap;
import java.util.List;
import com.ruoyi.job.domain.MydoJob;
/**
* 作业信息Mapper接口
*
* @author ruoyi
* @date 2025-09-22
*/
public interface MydoJobMapper
{
/**
* 查询作业信息
*
* @param jobId 作业信息主键
* @return 作业信息
*/
public MydoJob selectMydoJobByJobId(String jobId);
/**
* 查询作业信息列表
*
* @param mydoJob 作业信息
* @return 作业信息集合
*/
public List<MydoJob> selectMydoJobList(MydoJob mydoJob);
/**
* 新增作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
public int insertMydoJob(MydoJob mydoJob);
/**
* 修改作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
public int updateMydoJob(MydoJob mydoJob);
/**
* 删除作业信息
*
* @param jobId 作业信息主键
* @return 结果
*/
public int deleteMydoJobByJobId(String jobId);
/**
* 批量删除作业信息
*
* @param jobIds 需要删除的数据主键集合
* @return 结果
*/
public int deleteMydoJobByJobIds(String[] jobIds);
void ddjTaskFinish(HashMap<String, Object> map);
void InvalidMydoJob(HashMap<String, Object> map);
}

View File

@@ -0,0 +1,67 @@
package com.ruoyi.job.service;
import java.util.List;
import com.ruoyi.job.domain.MydoJob;
/**
* 作业信息Service接口
*
* @author ruoyi
* @date 2025-09-22
*/
public interface IMydoJobService
{
/**
* 查询作业信息
*
* @param jobId 作业信息主键
* @return 作业信息
*/
public MydoJob selectMydoJobByJobId(String jobId);
/**
* 查询作业信息列表
*
* @param mydoJob 作业信息
* @return 作业信息集合
*/
public List<MydoJob> selectMydoJobList(MydoJob mydoJob);
/**
* 新增作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
public int insertMydoJob(MydoJob mydoJob);
/**
* 修改作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
public int updateMydoJob(MydoJob mydoJob);
/**
* 批量删除作业信息
*
* @param jobIds 需要删除的作业信息主键集合
* @return 结果
*/
public int deleteMydoJobByJobIds(String[] jobIds);
/**
* 删除作业信息信息
*
* @param jobId 作业信息主键
* @return 结果
*/
public int deleteMydoJobByJobId(String jobId);
MydoJob selectMydoJobByTaskNo(Long rwh);
boolean ddjTaskFinish(Long rwh, Long id);
boolean InvalidMydoJob(Long rwh, Long id);
}

View File

@@ -0,0 +1,129 @@
package com.ruoyi.job.service.impl;
import java.util.HashMap;
import java.util.List;
import cn.hutool.core.convert.Convert;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.job.mapper.MydoJobMapper;
import com.ruoyi.job.domain.MydoJob;
import com.ruoyi.job.service.IMydoJobService;
/**
* 作业信息Service业务层处理
*
* @author ruoyi
* @date 2025-09-22
*/
@Service
public class MydoJobServiceImpl implements IMydoJobService
{
@Autowired
private MydoJobMapper mydoJobMapper;
/**
* 查询作业信息
*
* @param jobId 作业信息主键
* @return 作业信息
*/
@Override
public MydoJob selectMydoJobByJobId(String jobId)
{
return mydoJobMapper.selectMydoJobByJobId(jobId);
}
/**
* 查询作业信息列表
*
* @param mydoJob 作业信息
* @return 作业信息
*/
@Override
public List<MydoJob> selectMydoJobList(MydoJob mydoJob)
{
return mydoJobMapper.selectMydoJobList(mydoJob);
}
/**
* 新增作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
@Override
public int insertMydoJob(MydoJob mydoJob)
{
mydoJob.setCreateTime(DateUtils.getNowDate());
return mydoJobMapper.insertMydoJob(mydoJob);
}
/**
* 修改作业信息
*
* @param mydoJob 作业信息
* @return 结果
*/
@Override
public int updateMydoJob(MydoJob mydoJob)
{
return mydoJobMapper.updateMydoJob(mydoJob);
}
/**
* 批量删除作业信息
*
* @param jobIds 需要删除的作业信息主键
* @return 结果
*/
@Override
public int deleteMydoJobByJobIds(String[] jobIds)
{
return mydoJobMapper.deleteMydoJobByJobIds(jobIds);
}
/**
* 删除作业信息信息
*
* @param jobId 作业信息主键
* @return 结果
*/
@Override
public int deleteMydoJobByJobId(String jobId)
{
return mydoJobMapper.deleteMydoJobByJobId(jobId);
}
@Override
public MydoJob selectMydoJobByTaskNo(Long rwh) {
return null;
}
@Override
public boolean ddjTaskFinish(Long rwh, Long id) {
HashMap<String, Object> map = new HashMap<>();
map.put("v_rwh", rwh);
map.put("v_ddj_id", id);
mydoJobMapper.ddjTaskFinish(map);
if (Convert.toInt(map.get("v_result"))==10){
return true;
}else {
throw new RuntimeException(map.get("v_result").toString());
}
}
@Override
public boolean InvalidMydoJob(Long rwh, Long id) {
HashMap<String, Object> map = new HashMap<>();
map.put("v_rwh", rwh);
map.put("v_ddj_id", id);
mydoJobMapper.InvalidMydoJob(map);
if (Convert.toInt(map.get("v_result"))==10){
return true;
}else {
throw new RuntimeException(map.get("v_result").toString());
}
}
}