no message

main
HUOJIN\92525 2026-01-14 16:29:11 +08:00
parent 211206994c
commit ca22218b8a
11 changed files with 52 additions and 77 deletions

View File

@ -1,32 +0,0 @@
package org.cpte.modules.constant.enums;
import lombok.Getter;
@Getter
public enum AsnOrderTypeEnum {
PRODUCT(0, "成品入库"),
ACCESSORY(1, "配件入库"),
PRODUCT_UNPALLETIZE(2, "成品拆托入库"),
ACCESSORY_UNPALLETIZE(3, "配件拆托入库"),
;
AsnOrderTypeEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
/**
*
*/
final Integer value;
/**
*
*/
final String desc;
}

View File

@ -22,6 +22,12 @@ public enum AsnTypeEnum {
PJC(3, "配件拆托入库"),
SC(4, "生产入库"),
WX(5, "维修入库"),
QC(6, "期初入库"),
;

View File

@ -5,6 +5,7 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.cpte.modules.conveyorLine.request.ScanTrayRequest;
import org.cpte.modules.conveyorLine.service.IConveyorLineService;
@ -37,13 +38,12 @@ public class ConveyorLineController {
@IgnoreAuth
public TesResult scanTray(@RequestBody ScanTrayRequest scanTrayRequest) {
try {
Long errorCode = scanTrayRequest.getContent().getSignal().getErrorCode();
if (errorCode == 0) {
List<String> errorMsg = scanTrayRequest.getContent().getSignal().getErrorReason();
if (CollectionUtils.isEmpty(errorMsg)) {
iConveyorLineService.scanTray(scanTrayRequest);
return TesResult.success();
} else {
iConveyorLineService.updateResMessageAsn(scanTrayRequest);
List<String> errorMsg = scanTrayRequest.getContent().getSignal().getErrorReason();
return TesResult.error(errorMsg.toString());
}
} catch (Exception e) {

View File

@ -76,9 +76,12 @@ public class IConveyorLineServiceImpl implements IConveyorLineService {
@Override
@Transactional(rollbackFor = Exception.class)
public void updateResMessageAsn(ScanTrayRequest scanTrayRequest) {
ScanTrayData data= scanTrayProcessor.prepareScanTrayData(scanTrayRequest);
ScanTrayData data = scanTrayProcessor.prepareScanTrayData(scanTrayRequest);
Asn asn = data.getAsn();
if (asn != null) {
if (asn.getResMessage().equals("检测成功")) {
return;
}
asn.setResMessage(scanTrayRequest.getContent().getSignal().getErrorReason().toString());
asnMapper.updateById(asn);
}
@ -122,7 +125,7 @@ public class IConveyorLineServiceImpl implements IConveyorLineService {
Object dateObj = redisUtil.get(CONVEYOR_LINE_KEY);
if (dateObj != null) {
String description = "工作站无入库任务";
return cleanJsonObject(conveyorLine,description);
return cleanJsonObject(conveyorLine, description);
} else {
redisUtil.set(CONVEYOR_LINE_KEY, agvTask.getId());
}

View File

@ -1,8 +1,20 @@
package org.cpte.modules.receive.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.cpte.modules.receive.entity.Asn;
import org.cpte.modules.receive.entity.ReceiveRecord;
public interface ReceiveRecordMapper extends BaseMapper<ReceiveRecord> {
import java.util.List;
public interface ReceiveRecordMapper extends BaseMapper<ReceiveRecord> {
/**
*
*
* @param asnId ID
* @return List<ReceiveRecord>
*/
@Select("select * from data_receive_record where asn_id = #{asnId} ")
List<ReceiveRecord> queryByAsnId(@Param("asnId") Long asnId);
}

View File

@ -95,7 +95,7 @@ public class AsnDetailServiceImpl extends ServiceImpl<AsnDetailMapper, AsnDetail
public void processInboundTask(InboundRequest inboundRequest, Map<String, Item> itemMap, Point srcPoint, Stock stock) {
//1.获取工作站
Point station = null;
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(inboundRequest.getType()) && srcPoint != null) {
if (AsnTypeEnum.CP.getValue().equals(inboundRequest.getType()) && srcPoint != null) {
station = getStationPoint(inboundRequest.getType());
}
@ -108,7 +108,7 @@ public class AsnDetailServiceImpl extends ServiceImpl<AsnDetailMapper, AsnDetail
stockService.bindStock(stock);
//4.成品入库生成AGV任务
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(inboundRequest.getType()) && station != null) {
if (AsnTypeEnum.CP.getValue().equals(inboundRequest.getType()) && station != null) {
agvTaskService.createAgvTask(null,asnDetails.get(0).getItemId(),asn.getId(), stock.getStockCode(), srcPoint.getPointCode(), station.getPointCode(), null, BusinessTypeEnum.INBOUND.getValue(), 0, AgvVendorEnum.HIK.getValue());
}
}
@ -121,7 +121,7 @@ public class AsnDetailServiceImpl extends ServiceImpl<AsnDetailMapper, AsnDetail
*/
private Point getStationPoint(Integer orderType) {
Point dstPoint = null;
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(orderType)) {
if (AsnTypeEnum.CP.getValue().equals(orderType)) {
//1.获取入库输送线工作台点位为终点,均衡分配点位-轮询方式
dstPoint = pointService.getWorkStationPoint(null, AreaTypeEnum.RK_DOCK.getValue(), GeneralConstant.RK_DOCK_TASK_INDEX);
}

View File

@ -10,17 +10,12 @@ import org.cpte.modules.base.entity.Stock;
import org.cpte.modules.base.service.IPointService;
import org.cpte.modules.base.service.IStockService;
import org.cpte.modules.constant.enums.AgvVendorEnum;
import org.cpte.modules.constant.enums.AsnOrderTypeEnum;
import org.cpte.modules.constant.enums.BusinessTypeEnum;
import org.cpte.modules.saiWms.request.CallAgvRequest;
import org.cpte.modules.saiWms.request.InboundRequest;
import org.cpte.modules.saiWms.vo.CallData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Set;
import java.util.stream.Collectors;
/**
* AGV
*/

View File

@ -1,33 +1,16 @@
package org.cpte.modules.saiWms.service.processor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.cpte.modules.base.entity.Item;
import org.cpte.modules.base.entity.Point;
import org.cpte.modules.base.entity.Stock;
import org.cpte.modules.base.service.IItemService;
import org.cpte.modules.base.service.IPointService;
import org.cpte.modules.base.service.IStockService;
import org.cpte.modules.constant.enums.AsnOrderTypeEnum;
import org.cpte.modules.constant.enums.AsnStatusEnum;
import org.cpte.modules.inventory.mapper.InventoryMapper;
import org.cpte.modules.receive.entity.Asn;
import org.cpte.modules.receive.entity.AsnDetail;
import org.cpte.modules.receive.mapper.AsnDetailMapper;
import org.cpte.modules.receive.mapper.AsnMapper;
import org.cpte.modules.receive.service.IAsnDetailService;
import org.cpte.modules.receive.service.IAsnService;
import org.cpte.modules.saiWms.request.InBoundCancelRequest;
import org.cpte.modules.saiWms.request.InboundRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
/**
*

View File

@ -214,7 +214,7 @@ public class InBoundTaskProcessor {
*/
private Point validateSrcPoint(Integer orderType, String srcPointCode) {
Point srcPoint = null;
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(orderType) && StringUtils.isNotBlank(srcPointCode)) {
if (AsnTypeEnum.CP.getValue().equals(orderType) && StringUtils.isNotBlank(srcPointCode)) {
srcPoint = pointService.validatePoint(srcPointCode);
}
return srcPoint;

View File

@ -11,18 +11,14 @@ import org.cpte.modules.base.service.IPointService;
import org.cpte.modules.base.service.IStockService;
import org.cpte.modules.constant.GeneralConstant;
import org.cpte.modules.constant.enums.AreaTypeEnum;
import org.cpte.modules.constant.enums.AsnOrderTypeEnum;
import org.cpte.modules.constant.enums.AsnTypeEnum;
import org.cpte.modules.constant.enums.PickTypeEnum;
import org.cpte.modules.saiWms.request.OutboundRequest;
import org.cpte.modules.shipping.entity.Pick;
import org.cpte.modules.shipping.entity.PickDetail;
import org.cpte.modules.shipping.mapper.PickMapper;
import org.cpte.modules.shipping.service.IPickDetailService;
import org.cpte.modules.shipping.service.IPickService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@ -187,7 +183,7 @@ public class OutBoundTaskProcessor {
*/
private Point validateSrcPoint(Integer orderType, String srcPointCode) {
Point srcPoint = null;
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(orderType)) {
if (AsnTypeEnum.CP.getValue().equals(orderType)) {
srcPoint = pointService.validatePoint(srcPointCode);
}
return srcPoint;
@ -201,7 +197,7 @@ public class OutBoundTaskProcessor {
*/
private Point getDstPoint(Integer orderType) {
Point dstPoint = null;
if (AsnOrderTypeEnum.PRODUCT.getValue().equals(orderType)) {
if (AsnTypeEnum.CP.getValue().equals(orderType)) {
//1.获取入库输送线工作台点位为终点,均衡分配点位-轮询方式
dstPoint = pointService.getWorkStationPoint(null, AreaTypeEnum.RK_DOCK.getValue(), GeneralConstant.RK_DOCK_TASK_INDEX);
}

View File

@ -3,6 +3,7 @@ package org.cpte.modules.tesAgv.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.cpte.modules.agvTask.entity.AgvTask;
import org.cpte.modules.agvTask.mapper.AgvTaskMapper;
@ -16,7 +17,10 @@ import org.cpte.modules.constant.enums.AgvVendorEnum;
import org.cpte.modules.constant.enums.BusinessTypeEnum;
import org.cpte.modules.constant.enums.CommonStatusEnum;
import org.cpte.modules.inventory.service.IInventoryService;
import org.cpte.modules.inventory.service.impl.InventoryServiceImpl;
import org.cpte.modules.receive.entity.AsnDetail;
import org.cpte.modules.receive.entity.ReceiveRecord;
import org.cpte.modules.receive.mapper.AsnDetailMapper;
import org.cpte.modules.receive.service.IAsnDetailService;
import org.cpte.modules.receive.service.IAsnService;
import org.cpte.modules.shipping.entity.Task;
import org.cpte.modules.shipping.mapper.TaskMapper;
@ -46,6 +50,9 @@ public class ITesAgvServiceImpl implements ITesAgvService {
@Autowired
private PointMapper pointMapper;
@Autowired
private AsnDetailMapper asnDetailMapper;
@Autowired
private TaskMapper taskMapper;
@ -55,9 +62,6 @@ public class ITesAgvServiceImpl implements ITesAgvService {
@Autowired
private OpenApiMapper openApiMapper;
@Autowired
private IPointService pointService;
@Autowired
private IAsnService asnService;
@ -300,6 +304,14 @@ public class ITesAgvServiceImpl implements ITesAgvService {
Point point = pointMapper.queryByPointCode(agvTask.getEndCode());
point.setStatus(CommonStatusEnum.USED.getValue());
pointMapper.updateById(point);
List<AsnDetail> asnDetails= asnDetailMapper.selectByMainId(agvTask.getBusinessDetailId());
for (AsnDetail asnDetail : asnDetails){
asnDetail.setToPointId(point.getId());
}
if(CollectionUtils.isNotEmpty(asnDetails)){
asnDetailMapper.updateById(asnDetails);
}
}
private void outBoundAgvTask(AgvTask newAgvTask, AgvTask agvTask) {