pda入库绑定选择,手动出库确认选择,盘点任务完成账务处理优化

This commit is contained in:
lsymicc
2026-09-15 00:00:55 +08:00
parent 0bd8d92bc0
commit 39632ef960
29 changed files with 1174 additions and 333 deletions

View File

@@ -2,6 +2,8 @@ package com.ruoyi.pda.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjUtil;
import com.ruoyi.common.TaskType;
import com.ruoyi.common.Utils.DecimalUtil;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
@@ -11,7 +13,9 @@ import com.ruoyi.in.job.domain.MydoJob;
import com.ruoyi.in.job.service.IMydoJobService;
import com.ruoyi.in.jobdetail.domain.MydoJobDetail;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockin.service.IInStockinService;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import com.ruoyi.out.stockoutdetail.domain.OutStockoutDetail;
import com.ruoyi.pda.domain.AddInJobRequest;
import com.ruoyi.pda.domain.TrayMsgBinding;
@@ -37,9 +41,13 @@ public class PdaController extends BaseController {
@Autowired
private IPdaService pdaService;
@Autowired
IMydoJobService mydoJobService;
@Autowired
IInStockinService inStockinService;
@Autowired
IInStockinDetailService inStockinDetailService;
/**
* 入库待处理任务列表
@@ -52,6 +60,7 @@ public class PdaController extends BaseController {
return getDataTable(list);
}
/**
* 入库待处理单据列表
*/
@@ -75,6 +84,7 @@ public class PdaController extends BaseController {
return getDataTable(list);
}
/**
* 出库待处理任务列表
*/
@@ -134,6 +144,7 @@ public class PdaController extends BaseController {
}
}
/**
* 入库绑盘
*/
@@ -167,7 +178,6 @@ public class PdaController extends BaseController {
}
/**
* 生成入库作业
* @param request
@@ -232,7 +242,7 @@ public class PdaController extends BaseController {
if(ObjUtil.isNull(info)){
return AjaxResult.error("找不到当前辊号信息,请检查入库单据明细");
}else{
if (info.getScanNum().equals(BigDecimal.valueOf(0))){
if (DecimalUtil.eq(info.getScanNum(), BigDecimal.valueOf(0))) {
return AjaxResult.success(info);
}else{
return AjaxResult.warn("该版辊已经执行过绑定操作,请确认绑定信息");
@@ -293,7 +303,7 @@ public class PdaController extends BaseController {
/**
* 出库确认-查询物料信息(辊号查询)
* 出库确认-查询物料信息(托盘号查询) - 仅查询出库单中包含的版辊信息
* @param trayCode 托盘号
* @return
*/
@@ -303,8 +313,8 @@ public class PdaController extends BaseController {
try {
MydoJob job = mydoJobService.selectMydoJobByTrayCode(trayCode);
List<MydoJobDetail> info = pdaService.getStockoutInfoByTrayCode(trayCode);
if(ObjUtil.isNull(job)){
return AjaxResult.error("找不到当前托盘出库明细,请检查出库作业");
if(ObjUtil.isNull(job) || info.isEmpty()){
return AjaxResult.error("找不到当前托盘出库明细,请检查作业状态");
}else{
return AjaxResult.success(info);
}
@@ -314,6 +324,49 @@ public class PdaController extends BaseController {
}
/**
* 出库确认-查询物料信息(托盘号查询) - 仅查询出库单中包含的版辊信息
* @param trayCode 托盘号
* @return
*/
@GetMapping("/getManualStockoutInfoByTrayCode")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult getManualStockoutInfoByTrayCode(String trayCode) {
try {
MydoJob job = mydoJobService.selectMydoJobByTrayCode(trayCode);
List<MydoJobDetail> info = pdaService.getStockoutInfoByTrayCode(trayCode);
if(ObjUtil.isNull(job) || info.isEmpty() || job.getInOrOut() != TaskType.TASKTYPE_STOCKOUT_MANUAL){
return AjaxResult.error("找不到当前<手动>出库作业明细,请检查作业状态");
}else{
return AjaxResult.success(info);
}
} catch (RuntimeException e) {
return AjaxResult.error(e.getMessage());
}
}
/**
* 入库绑定 - 通过入库单据号获取所有版辊信息集合
* @param stockinId 托盘号
* @return
*/
@GetMapping("/getDetailListByStockinId")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult getDetailListByStockinId(String stockinId) {
try {
List<InStockinDetail> details = inStockinDetailService.selectInStockinDetailByStockinId(stockinId);
if(details.isEmpty()){
return AjaxResult.error();
}else{
return AjaxResult.success(details);
}
} catch (RuntimeException e) {
return AjaxResult.error(e.getMessage());
}
}
/**
* 呼叫空托出库
* @param params 货位区域,托盘类型
@@ -321,11 +374,23 @@ public class PdaController extends BaseController {
*/
@PostMapping("/callStockOutForContainer")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult callStockOutForEmptyPallet(@RequestBody Map<String, Object> params) {
public AjaxResult callStockOutForContainer(@RequestBody Map<String, Object> params) {
return pdaService.callContainerStockOut(params);
}
/**
* 物料(版辊)手动强制出库
* @param params
* @return
*/
@PostMapping("/rollerNumberComplete")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult rollerNumberComplete(@RequestBody Map<String, Object> params) {
return pdaService.rollerNumberComplete(params);
}
/**
* 物料(版辊)出库确认
* @param params
@@ -339,7 +404,7 @@ public class PdaController extends BaseController {
/**
* 物料(版辊)出库确认
* 物料(版辊)单据出库确认 - 版辊单独确认
* @param trayCode
* @return
*/
@@ -350,4 +415,28 @@ public class PdaController extends BaseController {
}
/**
* 手动指定出库确认 - 版辊单独确认
* @param trayCode
* @return
*/
@PostMapping("/stockoutTrayCodeCompleteManual")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult stockoutTrayCodeCompleteManual(String trayCode) {
return pdaService.stockoutTrayCodeCompleteManual(trayCode);
}
/**
* 物料(版辊)出库确认 - 一键确认
* @param trayCode
* @return
*/
@PostMapping("/stockoutTrayCodeCompleteAll")
@PreAuthorize("@ss.hasPermi('out:bound:task:info')")
public AjaxResult stockoutTrayCodeCompleteAll(String trayCode) {
return pdaService.stockoutTrayCodeCompleteAll(trayCode);
}
}