后台信息国际化

This commit is contained in:
liuhanqing
2025-07-29 16:59:06 +08:00
parent 2e79e1a04e
commit 59aa1b8b3e
12 changed files with 207 additions and 90 deletions

View File

@@ -23,6 +23,7 @@ import com.ruoyi.bas.warehouse.service.IBasWarehouseService;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.text.Convert; import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.MessageUtils;
import com.ruoyi.job.mydojob.domain.MydoJob; import com.ruoyi.job.mydojob.domain.MydoJob;
import com.ruoyi.job.mydojob.mapper.MydoJobMapper; import com.ruoyi.job.mydojob.mapper.MydoJobMapper;
import com.ruoyi.job.mydojob.service.IMydoJobService; import com.ruoyi.job.mydojob.service.IMydoJobService;
@@ -35,6 +36,8 @@ import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail;
import com.ruoyi.out.outStockoutDetail.service.IOutStockoutDetailService; import com.ruoyi.out.outStockoutDetail.service.IOutStockoutDetailService;
import com.ruoyi.out.tagTask.domain.TagTask; import com.ruoyi.out.tagTask.domain.TagTask;
import com.ruoyi.out.tagTask.service.ITagTaskService; import com.ruoyi.out.tagTask.service.ITagTaskService;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.bridge.Message;
import org.aspectj.weaver.loadtime.Aj; import org.aspectj.weaver.loadtime.Aj;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
@@ -49,6 +52,7 @@ import java.util.Map;
* 作业统计 Service 实现 * 作业统计 Service 实现
*/ */
@Service @Service
@Slf4j
public class ToWmsServiceImpl implements IToWmsService { public class ToWmsServiceImpl implements IToWmsService {
@Autowired @Autowired
private IMydoJobService mydoJobService; private IMydoJobService mydoJobService;
@@ -73,12 +77,13 @@ public class ToWmsServiceImpl implements IToWmsService {
@Override @Override
public AjaxResult requestEnter(MydoJob param) { public AjaxResult requestEnter(MydoJob param) {
MydoJob mydoJobParam = new MydoJob(); MydoJob mydoJobParam = new MydoJob();
mydoJobParam.setTrayCode(param.getTrayCode()); mydoJobParam.setTrayCode(param.getTrayCode());
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
if(mydoJobs.isEmpty()){ if(mydoJobs.isEmpty()){
return AjaxResult.error("此托盘没有作业"); return AjaxResult.warn(MessageUtils.message("warn.message"));
} }
MydoJob mydoJob = mydoJobs.get(0); MydoJob mydoJob = mydoJobs.get(0);
if ("1".equals(mydoJob.getExecutionPhase())){ if ("1".equals(mydoJob.getExecutionPhase())){
@@ -96,34 +101,34 @@ public class ToWmsServiceImpl implements IToWmsService {
switch (wmsJobRequest.getWmsType()){ switch (wmsJobRequest.getWmsType()){
case "1": case "1":
if (StrUtil.isEmpty(wmsJobRequest.getTrayCode())){ if (StrUtil.isEmpty(wmsJobRequest.getTrayCode())){
return AjaxResult.error("托盘码不能为空"); return AjaxResult.error(MessageUtils.message("error.message1"));
} }
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){ if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){
return AjaxResult.error("作业号不能为空"); return AjaxResult.error(MessageUtils.message("error.message2"));
} }
//入库 //入库
mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo()); mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo());
mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode()); mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode());
List<MydoJob> inMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); List<MydoJob> inMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
if (inMydoJobs.isEmpty()){ if (inMydoJobs.isEmpty()){
return AjaxResult.error("没有该作业 taskNo: {}", wmsJobRequest.getTaskNo()); return AjaxResult.error(MessageUtils.message("warn.message"));
} }
MydoJob inMydoJob = inMydoJobs.get(0); MydoJob inMydoJob = inMydoJobs.get(0);
mydoJobService.manualCompleted(inMydoJob); mydoJobService.manualCompleted(inMydoJob);
break; break;
case "2": case "2":
if (StrUtil.isEmpty(wmsJobRequest.getPickSsj())){ if (StrUtil.isEmpty(wmsJobRequest.getPickSsj())){
return AjaxResult.error("拣选工位不能为空"); return AjaxResult.error(MessageUtils.message("error.message3"));
} }
if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){ if (StrUtil.isEmpty(wmsJobRequest.getTaskNo())){
return AjaxResult.error("作业号不能为空"); return AjaxResult.error(MessageUtils.message("error.message2"));
} }
//出库 //出库
mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo()); mydoJobParam.setTaskNo(wmsJobRequest.getTaskNo());
//mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode()); //mydoJobParam.setTrayCode(wmsJobRequest.getTrayCode());
List<MydoJob> outMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); List<MydoJob> outMydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
if (outMydoJobs.isEmpty()){ if (outMydoJobs.isEmpty()){
return AjaxResult.error("没有该作业 taskNo: {}", wmsJobRequest.getTaskNo()); return AjaxResult.error(MessageUtils.message("warn.message"));
} }
MydoJob outJob = outMydoJobs.get(0); MydoJob outJob = outMydoJobs.get(0);
//查询拣选工位绑定的电子标签 //查询拣选工位绑定的电子标签
@@ -132,7 +137,7 @@ public class ToWmsServiceImpl implements IToWmsService {
tagParam.setSpare3("1"); tagParam.setSpare3("1");
List<BasTag> tags = iBasTagService.selectBasTagList(tagParam); List<BasTag> tags = iBasTagService.selectBasTagList(tagParam);
if (tags.isEmpty()){ if (tags.isEmpty()){
return AjaxResult.error("没有该拣选工位绑定的电子标签"); return AjaxResult.error(MessageUtils.message("error.message4"));
} }
BasTag basTag = tags.get(0); BasTag basTag = tags.get(0);
basTag.setTrayCode(outJob.getTrayCode()); basTag.setTrayCode(outJob.getTrayCode());
@@ -155,13 +160,13 @@ public class ToWmsServiceImpl implements IToWmsService {
break; break;
case "3": case "3":
if (StrUtil.isEmpty(wmsJobRequest.getContainerCode())){ if (StrUtil.isEmpty(wmsJobRequest.getContainerCode())){
return AjaxResult.error("容器码不能为空"); return AjaxResult.error(MessageUtils.message("error.message5"));
} }
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode1())){ if (StrUtil.isEmpty(wmsJobRequest.getPositionCode1())){
return AjaxResult.error("起始点位不能为空"); return AjaxResult.error(MessageUtils.message("error.message6"));
} }
if (StrUtil.isEmpty(wmsJobRequest.getPositionCode2())){ if (StrUtil.isEmpty(wmsJobRequest.getPositionCode2())){
return AjaxResult.error("目标点位不能为空"); return AjaxResult.error(MessageUtils.message("error.message7"));
} }
//agv搬运作业 //agv搬运作业
//绑定料架和点位 //绑定料架和点位
@@ -170,7 +175,8 @@ public class ToWmsServiceImpl implements IToWmsService {
basContainerParam.setPortName(wmsJobRequest.getPositionCode1()); basContainerParam.setPortName(wmsJobRequest.getPositionCode1());
List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam); List<BasContainer> basContainers = basContainerService.selectBasContainerList(basContainerParam);
if (basContainers.isEmpty()){ if (basContainers.isEmpty()){
return AjaxResult.error("没有该料架 {}", wmsJobRequest.getContainerCode()); log.error("没有该料架 {}", wmsJobRequest.getContainerCode());
return AjaxResult.error();
} }
//修改绑定点位 //修改绑定点位
BasContainer basContainer = basContainers.get(0); BasContainer basContainer = basContainers.get(0);
@@ -178,7 +184,8 @@ public class ToWmsServiceImpl implements IToWmsService {
basContainerService.updateBasContainer(basContainer); basContainerService.updateBasContainer(basContainer);
break; break;
default: default:
return AjaxResult.error("作业类型错误"); log.error("作业类型错误");
return AjaxResult.error();
} }
return AjaxResult.success(); return AjaxResult.success();
} }
@@ -190,12 +197,13 @@ public class ToWmsServiceImpl implements IToWmsService {
String warehouseId = mydoJob.getWarehouseId(); String warehouseId = mydoJob.getWarehouseId();
BasCargoSpace basCargoSpace = basCargoSpaceService.selectEmptyCargoSpaceByWarehouseId(warehouseId); BasCargoSpace basCargoSpace = basCargoSpaceService.selectEmptyCargoSpaceByWarehouseId(warehouseId);
if (basCargoSpace == null){ if (basCargoSpace == null){
return AjaxResult.error("没有空货位"); log.error("没有空货位");
return AjaxResult.error();
}else { }else {
mydoJob.setCargoSpaceId(basCargoSpace.getCargoSpaceId()); mydoJob.setCargoSpaceId(basCargoSpace.getCargoSpaceId());
mydoJob.setFaultFlag("1"); mydoJob.setFaultFlag("1");
mydoJobService.updateMydoJob(mydoJob); mydoJobService.updateMydoJob(mydoJob);
return AjaxResult.success("重新分配货位成功", mydoJob); return AjaxResult.success(mydoJob);
} }
} }
@@ -217,7 +225,7 @@ public class ToWmsServiceImpl implements IToWmsService {
public AjaxResult getJob(MydoJob mydoJob) { public AjaxResult getJob(MydoJob mydoJob) {
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJob); List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJob);
if (mydoJobs.isEmpty()){ if (mydoJobs.isEmpty()){
return AjaxResult.error("没有该作业"); return AjaxResult.error();
}else { }else {
return AjaxResult.success(mydoJobs); return AjaxResult.success(mydoJobs);
} }
@@ -229,14 +237,14 @@ public class ToWmsServiceImpl implements IToWmsService {
mydoJobParam.setTaskNo(mydoJob.getTaskNo()); mydoJobParam.setTaskNo(mydoJob.getTaskNo());
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); List<MydoJob> mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam);
if (mydoJobs.isEmpty()){ if (mydoJobs.isEmpty()){
return AjaxResult.error("没有该作业"); return AjaxResult.error();
}else { }else {
for (MydoJob mydoJob1 : mydoJobs) { for (MydoJob mydoJob1 : mydoJobs) {
mydoJob1.setStatus("3"); mydoJob1.setStatus("3");
mydoJob1.setStartTime(DateUtil.formatDateTime(DateUtil.date())); mydoJob1.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
mydoJobService.updateMydoJob(mydoJob1); mydoJobService.updateMydoJob(mydoJob1);
} }
return AjaxResult.success("开始作业成功"); return AjaxResult.success();
} }
} }
} }

View File

@@ -11,6 +11,7 @@ import cn.hutool.core.util.StrUtil;
import com.ruoyi.bas.basJobId.service.IBasJobIdService; import com.ruoyi.bas.basJobId.service.IBasJobIdService;
import com.ruoyi.bas.warehouse.domain.BasWarehouse; import com.ruoyi.bas.warehouse.domain.BasWarehouse;
import com.ruoyi.bas.warehouse.service.IBasWarehouseService; import com.ruoyi.bas.warehouse.service.IBasWarehouseService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@@ -44,6 +45,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
*/ */
@RestController @RestController
@RequestMapping("/check/difference") @RequestMapping("/check/difference")
@Slf4j
public class CheckDifferenceRecordController extends BaseController { public class CheckDifferenceRecordController extends BaseController {
@Autowired @Autowired
private ICheckDifferenceRecordService checkDifferenceRecordService; private ICheckDifferenceRecordService checkDifferenceRecordService;
@@ -140,7 +142,8 @@ public class CheckDifferenceRecordController extends BaseController {
if ("1".equals(recordType)) { // 更新数据 if ("1".equals(recordType)) { // 更新数据
// 根据stockId、trayCode、oldQuantity查找库存记录 // 根据stockId、trayCode、oldQuantity查找库存记录
if (StrUtil.isEmpty(record.getStockId())) { if (StrUtil.isEmpty(record.getStockId())) {
return AjaxResult.error("没有找到该库存ID:" + record.getStockId()); log.error("没有找到该库存ID:{}" , record.getStockId());
return AjaxResult.error();
} }
BasStock queryStock = new BasStock(); BasStock queryStock = new BasStock();
@@ -148,7 +151,8 @@ public class CheckDifferenceRecordController extends BaseController {
List<BasStock> stocks = basStockService.selectBasStockList(queryStock); List<BasStock> stocks = basStockService.selectBasStockList(queryStock);
if (stocks.isEmpty()) { if (stocks.isEmpty()) {
return AjaxResult.error("没有在库存中找到该条记录:库存ID=" + record.getStockId() + ", 托盘号=" + record.getTrayCode()); log.error("没有在库存中找到该条记录:库存ID {}, 托盘号 {}", record.getStockId() , record.getTrayCode());
return AjaxResult.error();
} }
// 更新库存数量和状态 // 更新库存数量和状态
@@ -159,7 +163,8 @@ public class CheckDifferenceRecordController extends BaseController {
} else if ("2".equals(recordType)) { // 新增数据 } else if ("2".equals(recordType)) { // 新增数据
// 检查物料ID是否存在 // 检查物料ID是否存在
if (record.getProductId() == null || record.getProductId().trim().isEmpty()) { if (record.getProductId() == null || record.getProductId().trim().isEmpty()) {
return AjaxResult.error("物料ID不能为空"); log.error("物料ID不能为空");
return AjaxResult.error();
} }
// 创建新的库存记录 // 创建新的库存记录
@@ -208,7 +213,8 @@ public class CheckDifferenceRecordController extends BaseController {
List<BasStock> stocks = basStockService.selectBasStockList(queryStock); List<BasStock> stocks = basStockService.selectBasStockList(queryStock);
if (stocks.isEmpty()) { if (stocks.isEmpty()) {
return AjaxResult.error("没有在库存中找到该条记录:库存ID=" + record.getStockId() + ", 托盘号=" + record.getTrayCode()); log.error("要删除的库存不存在");
return AjaxResult.error();
} }

View File

@@ -11,6 +11,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.stock.stock.domain.BasStock; import com.ruoyi.stock.stock.domain.BasStock;
import com.ruoyi.stock.stock.service.IBasStockService; import com.ruoyi.stock.stock.service.IBasStockService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.ruoyi.check.difference.mapper.CheckDifferenceRecordMapper; import com.ruoyi.check.difference.mapper.CheckDifferenceRecordMapper;
@@ -24,6 +25,7 @@ import com.ruoyi.check.difference.service.ICheckDifferenceRecordService;
* @date 2025-05-28 * @date 2025-05-28
*/ */
@Service @Service
@Slf4j
public class CheckDifferenceRecordServiceImpl implements ICheckDifferenceRecordService public class CheckDifferenceRecordServiceImpl implements ICheckDifferenceRecordService
{ {
@Autowired @Autowired
@@ -73,7 +75,8 @@ public class CheckDifferenceRecordServiceImpl implements ICheckDifferenceRecordS
String stockId = checkDifferenceRecord.getStockId(); String stockId = checkDifferenceRecord.getStockId();
BasStock basStock = basStockService.selectBasStockByStockId(stockId); BasStock basStock = basStockService.selectBasStockByStockId(stockId);
if (!"1".equals(basStock.getProductStatus())){ if (!"1".equals(basStock.getProductStatus())){
return AjaxResult.warn("库存非正常状态"); log.warn("库存非正常状态{}",basStock.getStockId());
return AjaxResult.error();
} }
if (basStock.getQuantity().equals(checkDifferenceRecord.getNewQuantity())){ if (basStock.getQuantity().equals(checkDifferenceRecord.getNewQuantity())){
return AjaxResult.success(); return AjaxResult.success();
@@ -92,20 +95,23 @@ public class CheckDifferenceRecordServiceImpl implements ICheckDifferenceRecordS
queryStock.setWarehouseId(checkDifferenceRecord.getWarehouseId()); queryStock.setWarehouseId(checkDifferenceRecord.getWarehouseId());
List<BasStock> stocks = basStockService.selectBasStockList(queryStock); List<BasStock> stocks = basStockService.selectBasStockList(queryStock);
if (!stocks.isEmpty()) { if (!stocks.isEmpty()) {
return AjaxResult.error("该物料已存在"); log.warn("该物料已存在{}",checkDifferenceRecord.getProductId());
return AjaxResult.error();
} }
BasCargoSpace queryCargoSpace = new BasCargoSpace(); BasCargoSpace queryCargoSpace = new BasCargoSpace();
queryCargoSpace.setWarehouseId(checkDifferenceRecord.getWarehouseId()); queryCargoSpace.setWarehouseId(checkDifferenceRecord.getWarehouseId());
List<BasCargoSpace> cargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(queryCargoSpace); List<BasCargoSpace> cargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(queryCargoSpace);
if (cargoSpaces.isEmpty()){ if (cargoSpaces.isEmpty()){
return AjaxResult.error("没有货位"); log.warn("没有货位");
return AjaxResult.error();
} }
checkDifferenceRecord.setCargoSpaceId(cargoSpaces.get(0).getCargoSpaceId()); checkDifferenceRecord.setCargoSpaceId(cargoSpaces.get(0).getCargoSpaceId());
checkDifferenceRecord.setOldQuantity("0"); checkDifferenceRecord.setOldQuantity("0");
}else if (checkDifferenceRecord.getRecordType()==3){ }else if (checkDifferenceRecord.getRecordType()==3){
BasStock basStock = basStockService.selectBasStockByStockId(checkDifferenceRecord.getStockId()); BasStock basStock = basStockService.selectBasStockByStockId(checkDifferenceRecord.getStockId());
if (!"1".equals(basStock.getProductStatus())){ if (!"1".equals(basStock.getProductStatus())){
return AjaxResult.warn("库存非正常状态"); log.warn("库存非正常状态 productId:{} status:{}",basStock.getProductId(),basStock.getProductStatus());
return AjaxResult.error();
} }
basStock.setProductStatus("2"); basStock.setProductStatus("2");
basStockService.updateBasStock(basStock); basStockService.updateBasStock(basStock);
@@ -120,7 +126,7 @@ public class CheckDifferenceRecordServiceImpl implements ICheckDifferenceRecordS
checkDifferenceRecord.setCheckGuid(IdUtil.fastSimpleUUID()); checkDifferenceRecord.setCheckGuid(IdUtil.fastSimpleUUID());
checkDifferenceRecord.setStatus("0"); checkDifferenceRecord.setStatus("0");
checkDifferenceRecordMapper.insertCheckDifferenceRecord(checkDifferenceRecord); checkDifferenceRecordMapper.insertCheckDifferenceRecord(checkDifferenceRecord);
return AjaxResult.success("操作成功"); return AjaxResult.success();
} }
/** /**

View File

@@ -29,6 +29,7 @@ import com.ruoyi.out.outStockout.domain.OutStockoutVo;
import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail; import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail;
import com.ruoyi.stock.stock.domain.BasStock; import com.ruoyi.stock.stock.domain.BasStock;
import com.ruoyi.stock.stock.service.IBasStockService; import com.ruoyi.stock.stock.service.IBasStockService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -44,6 +45,7 @@ import org.springframework.transaction.annotation.Transactional;
* @date 2025-05-29 * @date 2025-05-29
*/ */
@Service @Service
@Slf4j
public class CheckStockinServiceImpl implements ICheckStockinService public class CheckStockinServiceImpl implements ICheckStockinService
{ {
@Autowired @Autowired
@@ -108,25 +110,29 @@ public class CheckStockinServiceImpl implements ICheckStockinService
if ("5".equals(checkStockin.getStatus())){ if ("5".equals(checkStockin.getStatus())){
//作废 //作废
if (!"1".equals(old.getStatus())){ if (!"1".equals(old.getStatus())){
return AjaxResult.error("单据状态非未执行状态!"); log.error("单据状态非未执行状态!");
return AjaxResult.error();
} }
checkStockinMapper.updateCheckStockin(checkStockin); checkStockinMapper.updateCheckStockin(checkStockin);
//插入历史单据 //插入历史单据
insertCheckStockinHistory(checkStockin); insertCheckStockinHistory(checkStockin);
}else if ("2".equals(checkStockin.getStatus())){ }else if ("2".equals(checkStockin.getStatus())){
if (StrUtil.isEmpty(checkStockin.getSpare1())){ if (StrUtil.isEmpty(checkStockin.getSpare1())){
return AjaxResult.error("请选择出口!"); log.error("请选择出口!");
return AjaxResult.error();
} }
//审核 //审核
if (!"1".equals(old.getStatus())){ if (!"1".equals(old.getStatus())){
return AjaxResult.error("单据状态非未执行状态!"); log.error("单据状态非未执行状态!");
return AjaxResult.error();
} }
checkStockinMapper.updateCheckStockin(checkStockin); checkStockinMapper.updateCheckStockin(checkStockin);
}else if ("4".equals(checkStockin.getStatus())){ }else if ("4".equals(checkStockin.getStatus())){
//确认 //确认
if (!"3".equals(old.getStatus())){ if (!"3".equals(old.getStatus())){
return AjaxResult.error("单据状态非正执行状态!"); log.error("单据状态非正执行状态!");
return AjaxResult.error();
} }
checkStockinMapper.updateCheckStockin(checkStockin); checkStockinMapper.updateCheckStockin(checkStockin);
insertCheckStockinHistory(checkStockin); insertCheckStockinHistory(checkStockin);
@@ -224,13 +230,14 @@ public class CheckStockinServiceImpl implements ICheckStockinService
public AjaxResult autoAllocation(CheckStockin checkStockin) { public AjaxResult autoAllocation(CheckStockin checkStockin) {
CheckStockin currentCheckStock = selectCheckStockinByStockGuid(checkStockin.getStockGuid()); CheckStockin currentCheckStock = selectCheckStockinByStockGuid(checkStockin.getStockGuid());
if (ObjUtil.isNull(currentCheckStock)){ if (ObjUtil.isNull(currentCheckStock)){
return AjaxResult.warn("单据不存在!"); log.warn("单据不存在! stockGudi:{}",checkStockin.getStockGuid());
return AjaxResult.error();
} }
HashMap<String, String> map = new HashMap<>(); HashMap<String, String> map = new HashMap<>();
map.put("v_stock_check_id", currentCheckStock.getStockCheckId()); map.put("v_stock_check_id", currentCheckStock.getStockCheckId());
checkStockinMapper.autoAllot(map); checkStockinMapper.autoAllot(map);
if ("10".equals(map.get("v_result"))){ if ("10".equals(map.get("v_result"))){
return AjaxResult.success("自动分配成功"); return AjaxResult.success();
}else { }else {
return AjaxResult.warn(map.get("v_resultmsg")); return AjaxResult.warn(map.get("v_resultmsg"));
} }

View File

@@ -23,6 +23,7 @@ import com.ruoyi.check.difference.service.ICheckDifferenceRecordService;
import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.MessageUtils;
import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService; import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail; import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail;
@@ -35,6 +36,7 @@ import com.ruoyi.pda.domain.TrayCodeMakeSure;
import com.ruoyi.pda.service.PdaService; import com.ruoyi.pda.service.PdaService;
import com.ruoyi.stock.stock.domain.BasStock; import com.ruoyi.stock.stock.domain.BasStock;
import com.ruoyi.stock.stock.service.IBasStockService; import com.ruoyi.stock.stock.service.IBasStockService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.ruoyi.job.mydojob.mapper.MydoJobMapper; import com.ruoyi.job.mydojob.mapper.MydoJobMapper;
@@ -50,6 +52,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
* @date 2025-05-23 * @date 2025-05-23
*/ */
@Service @Service
@Slf4j
public class MydoJobServiceImpl implements IMydoJobService { public class MydoJobServiceImpl implements IMydoJobService {
@Autowired @Autowired
private MydoJobMapper mydoJobMapper; private MydoJobMapper mydoJobMapper;
@@ -167,10 +170,10 @@ public class MydoJobServiceImpl implements IMydoJobService {
String jobId = mydoJob.getJobId(); String jobId = mydoJob.getJobId();
MydoJob job = selectMydoJobByJobId(jobId); MydoJob job = selectMydoJobByJobId(jobId);
if (job == null) { if (job == null) {
return AjaxResult.warn("任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message"));
} }
if (!"1".equals(job.getStatus())) { if (!"1".equals(job.getStatus())) {
return AjaxResult.warn("任务已开始"); return AjaxResult.warn(MessageUtils.message("warn.message1"));
} }
if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) { if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) {
mydoJob.setStatus("5"); mydoJob.setStatus("5");
@@ -223,12 +226,12 @@ public class MydoJobServiceImpl implements IMydoJobService {
String jobId = mydoJob.getJobId(); String jobId = mydoJob.getJobId();
MydoJob job = selectMydoJobByJobId(jobId); MydoJob job = selectMydoJobByJobId(jobId);
if (job == null) { if (job == null) {
return AjaxResult.warn("任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message"));
} }
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(job.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(job.getWarehouseId());
if("2".equals(basWarehouse.getWarehouseType())) { if("2".equals(basWarehouse.getWarehouseType())) {
if ("1".equals(job.getStatus()) || "2".equals(job.getStatus())) { if ("1".equals(job.getStatus()) || "2".equals(job.getStatus())) {
return AjaxResult.warn("任务未开始"); return AjaxResult.warn(MessageUtils.message("warn.message1"));
} }
} }
if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) { if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) {
@@ -259,7 +262,7 @@ public class MydoJobServiceImpl implements IMydoJobService {
insertHistory(mydoJob.getJobId()); insertHistory(mydoJob.getJobId());
return AjaxResult.success(); return AjaxResult.success();
} else { } else {
return AjaxResult.warn("子任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message2"));
} }
} else if ("2".equals(job.getInOrOut()) || "3".equals(job.getInOrOut())) { } else if ("2".equals(job.getInOrOut()) || "3".equals(job.getInOrOut())) {
//ctu物料入库 高架库入库 //ctu物料入库 高架库入库
@@ -322,7 +325,7 @@ public class MydoJobServiceImpl implements IMydoJobService {
insertHistory(mydoJob.getJobId()); insertHistory(mydoJob.getJobId());
return AjaxResult.success(); return AjaxResult.success();
} else { } else {
return AjaxResult.warn("子任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message2"));
} }
} else if ("5".equals(job.getInOrOut()) || "6".equals(job.getInOrOut())) { } else if ("5".equals(job.getInOrOut()) || "6".equals(job.getInOrOut())) {
//盘点 ctu入库 高架库入库 //盘点 ctu入库 高架库入库
@@ -376,10 +379,10 @@ public class MydoJobServiceImpl implements IMydoJobService {
insertHistory(mydoJob.getJobId()); insertHistory(mydoJob.getJobId());
return AjaxResult.success(); return AjaxResult.success();
} else { } else {
return AjaxResult.warn("子任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message2"));
} }
} else { } else {
return AjaxResult.warn("暂不支持的任务类型"); return AjaxResult.warn(MessageUtils.message("warn.message3"));
} }
} }
@@ -415,7 +418,8 @@ public class MydoJobServiceImpl implements IMydoJobService {
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(job.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(job.getWarehouseId());
if("1".equals(basWarehouse.getWarehouseType()) && Integer.parseInt(job.getStatus())<3){ if("1".equals(basWarehouse.getWarehouseType()) && Integer.parseInt(job.getStatus())<3){
return AjaxResult.error("只能完成正执行的作业"); log.error("只能完成正执行的作业");
return AjaxResult.error();
} }
TrayCodeMakeSure trayCodeMakeSure = new TrayCodeMakeSure(); TrayCodeMakeSure trayCodeMakeSure = new TrayCodeMakeSure();
trayCodeMakeSure.setTrayCode(job.getTrayCode()); trayCodeMakeSure.setTrayCode(job.getTrayCode());
@@ -431,7 +435,8 @@ public class MydoJobServiceImpl implements IMydoJobService {
for (String jobId : jobIds) { for (String jobId : jobIds) {
MydoJob job = selectMydoJobByJobId(jobId); MydoJob job = selectMydoJobByJobId(jobId);
if (job == null) { if (job == null) {
return AjaxResult.error("任务不存在"); log.error("任务不存在");
return AjaxResult.error();
} }
MydoJobDetail mydoJobDetail = new MydoJobDetail(); MydoJobDetail mydoJobDetail = new MydoJobDetail();
mydoJobDetail.setJobId(jobId); mydoJobDetail.setJobId(jobId);
@@ -469,7 +474,8 @@ public class MydoJobServiceImpl implements IMydoJobService {
} catch (Exception e) { } catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return AjaxResult.error("任务处理异常"); log.error("任务处理异常", e);
return AjaxResult.error();
} }
} }
@@ -490,7 +496,7 @@ public class MydoJobServiceImpl implements IMydoJobService {
Stringbuilder += stockId + msg + "<br/>"; Stringbuilder += stockId + msg + "<br/>";
} }
return AjaxResult.success(Stringbuilder.toString()); return AjaxResult.success();
} }
@Override @Override

View File

@@ -9,6 +9,7 @@ import java.util.List;
import com.ruoyi.bas.basJobId.service.IBasJobIdService; import com.ruoyi.bas.basJobId.service.IBasJobIdService;
import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.MessageUtils;
import com.ruoyi.common.utils.uuid.UUID; import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.out.outStockout.domain.OutStockoutVo; import com.ruoyi.out.outStockout.domain.OutStockoutVo;
import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail; import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail;
@@ -161,10 +162,10 @@ public class OutStockoutServiceImpl implements IOutStockoutService
OutStockout outStockout = outStockoutMapper.selectOutStockoutByStockoutId(stockoutId); OutStockout outStockout = outStockoutMapper.selectOutStockoutByStockoutId(stockoutId);
if (outStockout == null){ if (outStockout == null){
return AjaxResult.warn("未找到出库单"); return AjaxResult.warn(MessageUtils.message("warn.message4"));
} }
if ("1".equals(outStockout.getStatus())){ if ("1".equals(outStockout.getStatus())){
return AjaxResult.warn("出库单状态未审核"); return AjaxResult.warn(MessageUtils.message("warn.message5"));
} }
HashMap<String, String> map = new HashMap<>(); HashMap<String, String> map = new HashMap<>();
@@ -184,6 +185,6 @@ public class OutStockoutServiceImpl implements IOutStockoutService
if (stringBuilder.length()>0){ if (stringBuilder.length()>0){
return AjaxResult.warn(stringBuilder.toString()); return AjaxResult.warn(stringBuilder.toString());
} }
return AjaxResult.success("自动分配成功"); return AjaxResult.success();
} }
} }

View File

@@ -28,6 +28,7 @@ import com.ruoyi.pda.trayMsg.domain.TrayMsg;
import com.ruoyi.pda.trayMsg.service.ITrayMsgService; import com.ruoyi.pda.trayMsg.service.ITrayMsgService;
import com.ruoyi.stock.stock.domain.BasStock; import com.ruoyi.stock.stock.domain.BasStock;
import com.ruoyi.stock.stock.service.IBasStockService; import com.ruoyi.stock.stock.service.IBasStockService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -42,6 +43,7 @@ import static com.ruoyi.common.utils.PageUtils.startPage;
@Controller @Controller
@RequestMapping("/pda") @RequestMapping("/pda")
@Slf4j
public class PdaController extends BaseController { public class PdaController extends BaseController {
@Autowired @Autowired
@@ -76,10 +78,12 @@ public class PdaController extends BaseController {
public AjaxResult emptyTrayIn(@RequestBody TrayCodeMsg trayCodeMsg) { public AjaxResult emptyTrayIn(@RequestBody TrayCodeMsg trayCodeMsg) {
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId());
if (basWarehouse == null) { if (basWarehouse == null) {
return AjaxResult.error("仓库不存在"); log.error("仓库不存在");
return AjaxResult.error();
} }
if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) { if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) {
return AjaxResult.error("请选择高架库货位"); log.error("请选择高架库货位");
return AjaxResult.error();
} }
if ("2".equals(basWarehouse.getWarehouseType())) { if ("2".equals(basWarehouse.getWarehouseType())) {
BasCargoSpace basCargoSpace = new BasCargoSpace(); BasCargoSpace basCargoSpace = new BasCargoSpace();
@@ -87,7 +91,8 @@ public class PdaController extends BaseController {
basCargoSpace.setStatus("1"); basCargoSpace.setStatus("1");
List<BasCargoSpace> basCargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(basCargoSpace); List<BasCargoSpace> basCargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(basCargoSpace);
if (basCargoSpaces.isEmpty()) { if (basCargoSpaces.isEmpty()) {
return AjaxResult.error("此仓库没有空余货位"); log.error("此仓库没有空余货位");
return AjaxResult.error();
} else { } else {
trayCodeMsg.setCargoSpaceId(basCargoSpaces.get(0).getCargoSpaceId()); trayCodeMsg.setCargoSpaceId(basCargoSpaces.get(0).getCargoSpaceId());
} }
@@ -124,7 +129,8 @@ public class PdaController extends BaseController {
if (!basStockList.isEmpty()) { if (!basStockList.isEmpty()) {
return AjaxResult.success(basStockList); return AjaxResult.success(basStockList);
} else { } else {
return AjaxResult.error("此区域没有空托盘库存"); log.error("此区域没有空托盘库存");
return AjaxResult.error();
} }
} }
@@ -141,20 +147,24 @@ public class PdaController extends BaseController {
public AjaxResult emptyTrayOut(@RequestBody TrayCodeMsg trayCodeMsg) { public AjaxResult emptyTrayOut(@RequestBody TrayCodeMsg trayCodeMsg) {
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId());
if (basWarehouse == null) { if (basWarehouse == null) {
return AjaxResult.error("仓库不存在"); log.error("仓库不存在");
return AjaxResult.error();
} }
if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) { if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) {
return AjaxResult.error("请选择高架库货位"); log.error("请选择高架库货位");
return AjaxResult.error();
} }
if ("2".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getExitId())) { if ("2".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getExitId())) {
return AjaxResult.error("请选择出口"); log.error("请选择出口");
return AjaxResult.error();
} }
if("2".equals(basWarehouse.getWarehouseType())){ if("2".equals(basWarehouse.getWarehouseType())){
BasStock basStock = new BasStock(); BasStock basStock = new BasStock();
basStock.setWarehouseId(trayCodeMsg.getWarehouseId()); basStock.setWarehouseId(trayCodeMsg.getWarehouseId());
List<BasStock> basStockList = basStockService.selectKtpStock(basStock); List<BasStock> basStockList = basStockService.selectKtpStock(basStock);
if(basStockList.size() == 0){ if(basStockList.isEmpty()){
return AjaxResult.error("此区域没有空托盘库存或此用户没有该区域权限"); log.warn("此区域没有空托盘库存或此用户没有该区域权限");
return AjaxResult.error();
}else{ }else{
trayCodeMsg.setCargoSpaceId(basStockList.get(0).getCargoSpaceId()); trayCodeMsg.setCargoSpaceId(basStockList.get(0).getCargoSpaceId());
} }
@@ -236,18 +246,21 @@ public class PdaController extends BaseController {
public AjaxResult addInJob(@RequestBody TrayCodeMsg trayCodeMsg) { public AjaxResult addInJob(@RequestBody TrayCodeMsg trayCodeMsg) {
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(trayCodeMsg.getWarehouseId());
if (basWarehouse == null) { if (basWarehouse == null) {
return AjaxResult.error("仓库不存在"); log.error("仓库不存在");
return AjaxResult.error();
} }
if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) { if ("1".equals(basWarehouse.getWarehouseType()) && StrUtil.isEmpty(trayCodeMsg.getCargoSpaceId())) {
return AjaxResult.error("请选择高架库货位"); log.error("请选择高架库货位");
return AjaxResult.error();
} }
if ("2".equals(basWarehouse.getWarehouseType())) { if ("2".equals(basWarehouse.getWarehouseType())) {
BasCargoSpace basCargoSpace = new BasCargoSpace(); BasCargoSpace basCargoSpace = new BasCargoSpace();
basCargoSpace.setWarehouseId(trayCodeMsg.getWarehouseId()); basCargoSpace.setWarehouseId(trayCodeMsg.getWarehouseId());
basCargoSpace.setStatus("1"); basCargoSpace.setStatus("1");
List<BasCargoSpace> basCargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(basCargoSpace); List<BasCargoSpace> basCargoSpaces = basCargoSpaceService.selectBasCargoSpaceList(basCargoSpace);
if (basCargoSpaces.size() == 0) { if (basCargoSpaces.isEmpty()) {
return AjaxResult.error("此仓库没有空余货位"); log.error("此仓库没有空余货位");
return AjaxResult.error();
} else { } else {
trayCodeMsg.setCargoSpaceId(basCargoSpaces.get(0).getCargoSpaceId()); trayCodeMsg.setCargoSpaceId(basCargoSpaces.get(0).getCargoSpaceId());
} }
@@ -354,7 +367,8 @@ public class PdaController extends BaseController {
mydoJob.setStatus(trayCodeMsg.getStatus()); mydoJob.setStatus(trayCodeMsg.getStatus());
List<MydoJob> mydoJobs = mydoJobService.selectMydoJobList(mydoJob); List<MydoJob> mydoJobs = mydoJobService.selectMydoJobList(mydoJob);
if(mydoJobs.isEmpty()){ if(mydoJobs.isEmpty()){
return AjaxResult.error("此托盘没有作业"); log.error("此托盘没有作业");
return AjaxResult.error();
} }
MydoJobDetail mydoJobDetail = new MydoJobDetail(); MydoJobDetail mydoJobDetail = new MydoJobDetail();
mydoJobDetail.setJobId(mydoJobs.get(0).getJobId()); mydoJobDetail.setJobId(mydoJobs.get(0).getJobId());
@@ -397,8 +411,9 @@ public class PdaController extends BaseController {
@RequestMapping("/agvRequest") @RequestMapping("/agvRequest")
@ResponseBody @ResponseBody
public AjaxResult agvRequest(@RequestBody BasContainer basContainer) { public AjaxResult agvRequest(@RequestBody BasContainer basContainer) {
if(basContainer.getDetails().size()==0){ if(basContainer.getDetails().isEmpty()){
return AjaxResult.error("该料架无物料信息"); log.error("该料架无物料信息");
return AjaxResult.error();
} }
return pdaService.agvRequest(basContainer); return pdaService.agvRequest(basContainer);
} }

View File

@@ -21,6 +21,7 @@ import com.ruoyi.bas.warehouse.service.IBasWarehouseService;
import com.ruoyi.check.commit.domain.CheckCommitRecord; import com.ruoyi.check.commit.domain.CheckCommitRecord;
import com.ruoyi.check.commit.service.ICheckCommitRecordService; import com.ruoyi.check.commit.service.ICheckCommitRecordService;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.MessageUtils;
import com.ruoyi.job.mydojob.domain.MydoJob; import com.ruoyi.job.mydojob.domain.MydoJob;
import com.ruoyi.job.mydojob.service.IMydoJobService; import com.ruoyi.job.mydojob.service.IMydoJobService;
import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail; import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail;
@@ -48,6 +49,7 @@ import com.ruoyi.pda.trayMsg.service.ITrayMsgService;
import com.ruoyi.stock.stock.domain.BasStock; import com.ruoyi.stock.stock.domain.BasStock;
import com.ruoyi.stock.stock.service.IBasStockService; import com.ruoyi.stock.stock.service.IBasStockService;
import com.ruoyi.system.service.ISysRoleService; import com.ruoyi.system.service.ISysRoleService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@@ -57,6 +59,7 @@ import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
@Slf4j
public class PdaServiceImp implements PdaService { public class PdaServiceImp implements PdaService {
@Autowired @Autowired
private PdaMapper pdaMapper; private PdaMapper pdaMapper;
@@ -182,7 +185,7 @@ public class PdaServiceImp implements PdaService {
inStockinDetail1.setStockinDetailId(trayCodeMsg.getStockinDetailId()); inStockinDetail1.setStockinDetailId(trayCodeMsg.getStockinDetailId());
InStockinDetail inStockinDetail = inStockinDetailService.selectStockinByDetailById(inStockinDetail1); InStockinDetail inStockinDetail = inStockinDetailService.selectStockinByDetailById(inStockinDetail1);
if (inStockinDetail == null) { if (inStockinDetail == null) {
return AjaxResult.warn("此用户无权限操作该仓库物料,或物料不存在"); return AjaxResult.warn(MessageUtils.message("warn.message6"));
} }
//判断与已绑定物料是否为同一仓库 //判断与已绑定物料是否为同一仓库
TrayMsg trayMsg = new TrayMsg(); TrayMsg trayMsg = new TrayMsg();
@@ -191,7 +194,7 @@ public class PdaServiceImp implements PdaService {
if (trayMsgs.size() > 0) { if (trayMsgs.size() > 0) {
// InStockinDetail inStockinDetail = inStockinDetailService.selectStockinByDetailById(trayCodeMsg.getStockinDetailId()); // InStockinDetail inStockinDetail = inStockinDetailService.selectStockinByDetailById(trayCodeMsg.getStockinDetailId());
if (!trayMsgs.get(0).getWarehouseId().equals(inStockinDetail.getWarehouseId())) { if (!trayMsgs.get(0).getWarehouseId().equals(inStockinDetail.getWarehouseId())) {
return AjaxResult.warn("同一托盘不能绑定不同仓库的物料"); return AjaxResult.warn(MessageUtils.message("warn.message7"));
} }
} }
@@ -240,7 +243,7 @@ public class PdaServiceImp implements PdaService {
// mydoJobParam.setStatus("3"); // mydoJobParam.setStatus("3");
List<MydoJob> mydoJobList = mydoJobService.selectMydoJobList(mydoJobParam); List<MydoJob> mydoJobList = mydoJobService.selectMydoJobList(mydoJobParam);
if (CollUtil.isEmpty(mydoJobList)) { if (CollUtil.isEmpty(mydoJobList)) {
return AjaxResult.warn("任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message1"));
} }
@@ -248,7 +251,7 @@ public class PdaServiceImp implements PdaService {
mydoJobDetailParam.setJobId(mydoJobList.get(0).getJobId()); mydoJobDetailParam.setJobId(mydoJobList.get(0).getJobId());
List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(mydoJobDetailParam); List<MydoJobDetail> mydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(mydoJobDetailParam);
if (CollUtil.isEmpty(mydoJobDetails)) { if (CollUtil.isEmpty(mydoJobDetails)) {
return AjaxResult.warn("子任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message2"));
} }
//空托盘空料箱 //空托盘空料箱
if ("21".equals(mydoJobList.get(0).getInOrOut()) || "22".equals(mydoJobList.get(0).getInOrOut())) { if ("21".equals(mydoJobList.get(0).getInOrOut()) || "22".equals(mydoJobList.get(0).getInOrOut())) {
@@ -260,7 +263,7 @@ public class PdaServiceImp implements PdaService {
outStockoutParam.setStockoutId(mydoJobDetails.get(0).getInOrOutId()); outStockoutParam.setStockoutId(mydoJobDetails.get(0).getInOrOutId());
List<OutStockout> outStockouts = outStockoutService.selectOutStockoutList(outStockoutParam); List<OutStockout> outStockouts = outStockoutService.selectOutStockoutList(outStockoutParam);
if (CollUtil.isEmpty(outStockouts)) { if (CollUtil.isEmpty(outStockouts)) {
return AjaxResult.warn("单据不存在"); return AjaxResult.warn(MessageUtils.message("warn.message4"));
} }
String billType = outStockouts.get(0).getOutType(); String billType = outStockouts.get(0).getOutType();
@@ -272,7 +275,7 @@ public class PdaServiceImp implements PdaService {
//退货单据 不绑定容器 //退货单据 不绑定容器
return handleOutType2(trayCodeMakeSure, mydoJobDetails, mydoJobList.get(0)); return handleOutType2(trayCodeMakeSure, mydoJobDetails, mydoJobList.get(0));
default: default:
return AjaxResult.warn("单据类型错误"); return AjaxResult.warn(MessageUtils.message("warn.message3"));
} }
} }
@@ -317,7 +320,7 @@ public class PdaServiceImp implements PdaService {
return AjaxResult.warn(map.get("v_resultmsg").toString()); return AjaxResult.warn(map.get("v_resultmsg").toString());
} }
} else { } else {
return AjaxResult.warn("拣选完成"); return AjaxResult.success();
} }
} }
@@ -394,7 +397,7 @@ public class PdaServiceImp implements PdaService {
return AjaxResult.warn(map.get("v_resultmsg").toString()); return AjaxResult.warn(map.get("v_resultmsg").toString());
} }
} else { } else {
return AjaxResult.warn("拣选完成"); return AjaxResult.success();
} }
} }
@@ -404,14 +407,14 @@ public class PdaServiceImp implements PdaService {
public AjaxResult checkMakeSure(TrayCodeMakeSure trayCodeMakeSure) { public AjaxResult checkMakeSure(TrayCodeMakeSure trayCodeMakeSure) {
MydoJob mydoJob = mydoJobService.selectMydoJobByTrayCode(trayCodeMakeSure.getTrayCode()); MydoJob mydoJob = mydoJobService.selectMydoJobByTrayCode(trayCodeMakeSure.getTrayCode());
if (mydoJob == null) { if (mydoJob == null) {
return AjaxResult.warn("任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message"));
} }
BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(mydoJob.getWarehouseId()); BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(mydoJob.getWarehouseId());
List<MydoJobDetail> mydoJobDetailList = trayCodeMakeSure.getMaterials(); List<MydoJobDetail> mydoJobDetailList = trayCodeMakeSure.getMaterials();
if (CollUtil.isNotEmpty(mydoJobDetailList)) { if (CollUtil.isNotEmpty(mydoJobDetailList)) {
boolean flag = mydoJobDetailList.stream().anyMatch(x -> StrUtil.isEmpty(x.getStockId()) && "0".equals(x.getInQuantity())); boolean flag = mydoJobDetailList.stream().anyMatch(x -> StrUtil.isEmpty(x.getStockId()) && "0".equals(x.getInQuantity()));
if (flag) { if (flag) {
return AjaxResult.warn("新增库存,存在为0的数量"); return AjaxResult.warn(MessageUtils.message("warn.message8"));
} }
for (MydoJobDetail mydoJobDetail : mydoJobDetailList) { for (MydoJobDetail mydoJobDetail : mydoJobDetailList) {
//插入盘点提交表 //插入盘点提交表
@@ -442,7 +445,7 @@ public class PdaServiceImp implements PdaService {
return AjaxResult.warn(map.get("v_resultmsg").toString()); return AjaxResult.warn(map.get("v_resultmsg").toString());
} }
} }
return AjaxResult.success("盘点完成"); return AjaxResult.success();
} }
/** /**
@@ -492,7 +495,7 @@ public class PdaServiceImp implements PdaService {
mydoJobParam.setTrayCode(trayCodeMakeSure.getTrayCode()); mydoJobParam.setTrayCode(trayCodeMakeSure.getTrayCode());
List<MydoJob> mydoJobList = mydoJobService.selectMydoJobList(mydoJobParam); List<MydoJob> mydoJobList = mydoJobService.selectMydoJobList(mydoJobParam);
if (CollUtil.isEmpty(mydoJobList)) { if (CollUtil.isEmpty(mydoJobList)) {
return AjaxResult.warn("任务不存在"); return AjaxResult.warn(MessageUtils.message("warn.message"));
} }
MydoJob mydoJob = mydoJobList.get(0); MydoJob mydoJob = mydoJobList.get(0);
@@ -574,7 +577,7 @@ public class PdaServiceImp implements PdaService {
if (detail.getQuantity() != 0) { if (detail.getQuantity() != 0) {
if (StrUtil.isEmpty(basContainer.getSpare1())) { if (StrUtil.isEmpty(basContainer.getSpare1())) {
return AjaxResult.warn("请选择退料仓库"); return AjaxResult.warn(MessageUtils.message("warn.message9"));
} }
//去ctu库站点 //去ctu库站点
BasProductPort basProductPort = new BasProductPort(); BasProductPort basProductPort = new BasProductPort();
@@ -687,10 +690,10 @@ public class PdaServiceImp implements PdaService {
@Override @Override
public AjaxResult bindContainer(TrayCodeMakeSure trayCodeMakeSure) { public AjaxResult bindContainer(TrayCodeMakeSure trayCodeMakeSure) {
if (CollUtil.isEmpty(trayCodeMakeSure.getMydoJobDetailList())) { if (CollUtil.isEmpty(trayCodeMakeSure.getMydoJobDetailList())) {
return AjaxResult.warn("请选择提供绑定数量"); return AjaxResult.warn(MessageUtils.message("warn.message10"));
} }
if (StrUtil.isEmpty(trayCodeMakeSure.getContainerCode())) { if (StrUtil.isEmpty(trayCodeMakeSure.getContainerCode())) {
return AjaxResult.warn("请选择绑定容器"); return AjaxResult.warn(MessageUtils.message("warn.message11"));
} }
for (MydoJobDetail mydoJobDetail : trayCodeMakeSure.getMydoJobDetailList()) { for (MydoJobDetail mydoJobDetail : trayCodeMakeSure.getMydoJobDetailList()) {
//绑定容器 //绑定容器
@@ -721,14 +724,15 @@ public class PdaServiceImp implements PdaService {
//删除缓存信息 //删除缓存信息
outPickSubmitService.deleteOutPickSubmitById(outPickSubmit.getId()); outPickSubmitService.deleteOutPickSubmitById(outPickSubmit.getId());
} else if (subtract.compareTo(BigDecimal.ZERO) < 0) { } else if (subtract.compareTo(BigDecimal.ZERO) < 0) {
return AjaxResult.warn("绑定数量不能大于实际数量");
return AjaxResult.warn(MessageUtils.message("warn.message12"));
} else { } else {
outPickSubmit.setQuantit(subtract.toString()); outPickSubmit.setQuantit(subtract.toString());
outPickSubmitService.updateOutPickSubmit(outPickSubmit); outPickSubmitService.updateOutPickSubmit(outPickSubmit);
} }
} }
} }
return AjaxResult.success("绑定成功"); return AjaxResult.success();
} }
@Override @Override
@@ -765,6 +769,6 @@ public class PdaServiceImp implements PdaService {
} }
return AjaxResult.success("绑定成功!"); return AjaxResult.success();
} }
} }

View File

@@ -28,6 +28,7 @@ import com.ruoyi.receive.stockin.domain.vo.*;
import com.ruoyi.receive.stockindetail.domain.ReceiveStockinDetail; import com.ruoyi.receive.stockindetail.domain.ReceiveStockinDetail;
import com.ruoyi.receive.stockindetail.service.IReceiveStockinDetailService; import com.ruoyi.receive.stockindetail.service.IReceiveStockinDetailService;
import com.ruoyi.receive.stockindetail.service.impl.ReceiveStockinDetailServiceImpl; import com.ruoyi.receive.stockindetail.service.impl.ReceiveStockinDetailServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.ruoyi.receive.stockin.mapper.ReceiveStockinMapper; import com.ruoyi.receive.stockin.mapper.ReceiveStockinMapper;
@@ -42,6 +43,7 @@ import org.springframework.web.multipart.MultipartFile;
* @author ruoyi * @author ruoyi
* @date 2025-05-20 * @date 2025-05-20
*/ */
@Slf4j
@Service @Service
public class ReceiveStockinServiceImpl implements IReceiveStockinService public class ReceiveStockinServiceImpl implements IReceiveStockinService
{ {
@@ -173,7 +175,8 @@ public class ReceiveStockinServiceImpl implements IReceiveStockinService
@Override @Override
public AjaxResult analyseExportFile(List<ReceiveProductVo> list) { public AjaxResult analyseExportFile(List<ReceiveProductVo> list) {
if (CollUtil.isEmpty(list)){ if (CollUtil.isEmpty(list)){
return AjaxResult.error("导入数据为空"); log.error("导入数据为空");
return AjaxResult.error();
} }
List<String> collect = list.stream().map(ReceiveProductVo::getProductId).collect(Collectors.toList()); List<String> collect = list.stream().map(ReceiveProductVo::getProductId).collect(Collectors.toList());
List<BasProduct> result = iBasProductService.selectBasProductListByProductIds(collect); List<BasProduct> result = iBasProductService.selectBasProductListByProductIds(collect);
@@ -207,7 +210,8 @@ public class ReceiveStockinServiceImpl implements IReceiveStockinService
Optional<ReceiveStockinDetail> first = list.stream().filter(x -> x.getStockStatus().equals("0")).findFirst(); Optional<ReceiveStockinDetail> first = list.stream().filter(x -> x.getStockStatus().equals("0")).findFirst();
if (first.isPresent()){ if (first.isPresent()){
ReceiveStockinDetail receiveStockinDetail = first.get(); ReceiveStockinDetail receiveStockinDetail = first.get();
return AjaxResult.error("编号:"+receiveStockinDetail.getProductId()+",未质检"); log.error("编号:{}未质检", receiveStockinDetail.getProductId());
return AjaxResult.error();
} }
InStockin inStockin = getInStockinByReceiveStockin(receiveStockin); InStockin inStockin = getInStockinByReceiveStockin(receiveStockin);
@@ -232,7 +236,8 @@ public class ReceiveStockinServiceImpl implements IReceiveStockinService
} }
} }
}else { }else {
return AjaxResult.error("单据不存在"); log.error("单据不存在");
return AjaxResult.error();
} }
}catch (Exception e){ }catch (Exception e){
throw new RuntimeException(e); throw new RuntimeException(e);

View File

@@ -14,6 +14,7 @@ import com.ruoyi.receive.stockin.domain.vo.ReceiveStockCreateInVo;
import com.ruoyi.receive.stockin.domain.vo.ReceiveStockDetailQualityInsVo; import com.ruoyi.receive.stockin.domain.vo.ReceiveStockDetailQualityInsVo;
import com.ruoyi.receive.stockin.domain.vo.ReceiveStockQualityInsVo; import com.ruoyi.receive.stockin.domain.vo.ReceiveStockQualityInsVo;
import com.ruoyi.receive.stockin.service.IReceiveStockinService; import com.ruoyi.receive.stockin.service.IReceiveStockinService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.ruoyi.receive.stockindetail.mapper.ReceiveStockinDetailMapper; import com.ruoyi.receive.stockindetail.mapper.ReceiveStockinDetailMapper;
@@ -27,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
* @author ruoyi * @author ruoyi
* @date 2025-05-20 * @date 2025-05-20
*/ */
@Slf4j
@Service @Service
public class ReceiveStockinDetailServiceImpl implements IReceiveStockinDetailService { public class ReceiveStockinDetailServiceImpl implements IReceiveStockinDetailService {
@Autowired @Autowired
@@ -131,7 +133,8 @@ public class ReceiveStockinDetailServiceImpl implements IReceiveStockinDetailSer
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public AjaxResult qualityInspection(ReceiveStockQualityInsVo receiveStockQualityInsVo) { public AjaxResult qualityInspection(ReceiveStockQualityInsVo receiveStockQualityInsVo) {
if (CollUtil.isEmpty(receiveStockQualityInsVo.getList())) { if (CollUtil.isEmpty(receiveStockQualityInsVo.getList())) {
return AjaxResult.error("请选择质检项"); log.error("请选择质检项");
return AjaxResult.error();
} }
for (ReceiveStockDetailQualityInsVo receiveStockDetailQualityInsVo : receiveStockQualityInsVo.getList()) { for (ReceiveStockDetailQualityInsVo receiveStockDetailQualityInsVo : receiveStockQualityInsVo.getList()) {
ReceiveStockinDetail receiveStockinDetail = selectReceiveStockinDetailByStockinDetailId(receiveStockDetailQualityInsVo.getStockinDetailId()); ReceiveStockinDetail receiveStockinDetail = selectReceiveStockinDetailByStockinDetailId(receiveStockDetailQualityInsVo.getStockinDetailId());

View File

@@ -38,7 +38,35 @@ no.export.permission=您没有导出数据的权限,请联系管理员添加
no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}] no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}]
#返回信息国际化
ajax.result.success=操作成功
ajax.result.fail=操作失败
table.result.success=查询成功
ajax.result.success=success #2wms message
ajax.result.fail=fail 2wms.result1=作业请求成功
table.result.success=success 2wms.result2=没有该作业
#warn message
warn.message=任务不存在
warn.message1=任务已开始
warn.message2=子任务不存在
warn.message3=暂不支持的任务类型
warn.message4=单据不存在
warn.message5=单据状态未审核
warn.message6=此用户无权限操作该仓库物料,或物料不存在
warn.message7=同一托盘不能绑定不同仓库的物料
warn.message8=新增库存,存在为0的数量
warn.message9=请选择仓库
warn.message10=请选择提供绑定数量
warn.message11=请选择绑定容器
warn.message12=绑定数量不能大于实际数量
#error message
error.message1=托盘码不能为空
error.message2=作业号不能为空
error.message3=拣选工位不能为空
error.message4=没有该拣选工位绑定的电子标签
error.message5=容器码不能为空
error.message6=起始点位不能为空
error.message7=目标点位不能为空

View File

@@ -37,7 +37,35 @@ no.delete.permission=您没有删除数据的权限,请联系管理员添加
no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}] no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}]
no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}] no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}]
#返回信息国际化
ajax.result.success=操作成功 ajax.result.success=操作成功
ajax.result.fail=操作失败 ajax.result.fail=操作失败
table.result.success=查询成功 table.result.success=查询成功
#2wms message
2wms.result1=作业请求成功
2wms.result2=没有该作业
#warn message
warn.message=任务不存在
warn.message1=任务已开始
warn.message2=子任务不存在
warn.message3=暂不支持的任务类型
warn.message4=单据不存在
warn.message5=单据状态未审核
warn.message6=此用户无权限操作该仓库物料,或物料不存在
warn.message7=同一托盘不能绑定不同仓库的物料
warn.message8=新增库存,存在为0的数量
warn.message9=请选择仓库
warn.message10=请选择提供绑定数量
warn.message11=请选择绑定容器
warn.message12=绑定数量不能大于实际数量
#error message
error.message1=托盘码不能为空
error.message2=作业号不能为空
error.message3=拣选工位不能为空
error.message4=没有该拣选工位绑定的电子标签
error.message5=容器码不能为空
error.message6=起始点位不能为空
error.message7=目标点位不能为空