Commit e75cbbe0 张少辉

1.接收momo的出库单修改

1 个父辈 ac565797
......@@ -624,11 +624,6 @@ public class LiteOrderCache {
task.setLocInfo(locInfo);
task.setSo(cacheOrder.getSo());
task.setSoltNum(orderItem.getSlotNum());
task.setStockoutNo(orderNo);
task.setContainer(pos.getBarcode().getPidBarcode());
task.setProductName("");
task.setStockreturnNoLine(orderItem.getStockoutNoLine());
// task = dataLogDao.save(task);
taskService.addTaskToExecute(task);
}
//如果是RI出库,只有一盘,出完就结束
......
......@@ -98,6 +98,14 @@ public class LiteOrder extends BasePo implements Serializable {
*/
private String type;
//momo新增的接口
private String billType;
private String momoType;
private String createTime;
private String creator;
/**
* 订单的详细信息
*/
......
......@@ -104,15 +104,15 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
private String orderType = "";
private String StockoutNoLine;
private String ProductName;
private String Equipment;
private String SubRegion;
private String StationNo;
private String PickLocation;
private List<TaskDetail> taskDetailList;
//momo新增的字段
private String rowNumber;
private String equipment;
private String subRegion;
private String stationNo;
private String pickLocation;
/**
* 自定义的附加字段,key=字段名,value=值
*/
......
......@@ -267,20 +267,6 @@ public class DataLog extends BasePo implements Serializable ,Comparable<DataLog>
private String currentLoc;
//退库增加的参数
private String productName;
private int qty;
private String stockreturnNoLine;
private String stockReturn;
//出库增加的参数
private String StockoutNo;
private String StockoutNoLine;
private String container;
public String getBarcode() {
if(barcode == null){
return "";
......
......@@ -84,7 +84,7 @@ public class MomoApi extends BaseSmfApiListener {
}
public void stockReturn(DataLog task) {
Map<String, Object> paramMap = new HashMap<>();
/*Map<String, Object> paramMap = new HashMap<>();
paramMap.put("ReturnDate", DateUtil.toDateString(task.getUpdateDate(), "yyyy/MM/dd HH:mm:ss"));
paramMap.put("StockReturn", task.getStockReturn());
......@@ -116,7 +116,7 @@ public class MomoApi extends BaseSmfApiListener {
log.info("接口6:MOM接收WMS的退库结果,返回参数为:" + resultStr);
} catch (ApiException e) {
log.error("接口6:MOM接收WMS的退库结果,请求异常:", e);
}
}*/
}
......@@ -128,7 +128,7 @@ public class MomoApi extends BaseSmfApiListener {
@Override
public void outTaskStatusChange(String outNotifyUrl, DataLog task) {
if (!task.isNotifyMomo()) {
Map<String, Object> paramMap = new HashMap<>();
/*Map<String, Object> paramMap = new HashMap<>();
paramMap.put("StockoutNo", task.getStockoutNo());
List<Map<String, Object>> DetailItems = new ArrayList<>();
......@@ -154,7 +154,7 @@ public class MomoApi extends BaseSmfApiListener {
log.info("接口5:MOM接收WMS的出库结果,返回参数为:" + resultStr);
} catch (ApiException e) {
log.error("接口5:MOM接收WMS的出库结果,请求异常:", e);
}
}*/
}
}
......
package com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.request;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class DeliveryOrder {
private List<DeliveryOrderItem> DetailItems;
private String StockoutNo;
@JsonProperty("DeliveryOrder")
private String deliveryOrder;
@JsonProperty("Type")
private String type;
@JsonProperty("BillType")
private String billType;
@JsonProperty("CreateTime")
private String createTime;
@JsonProperty("Creator")
private String creator;
private List<DeliveryOrderMaterial> DeliveryOrderMaterial;
}
package com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.request;
import lombok.Data;
@Data
public class DeliveryOrderItem {
private String Container;
private String ProductName;
private String ProductNo;
private int QuantityOnHand;
private String StockoutNoLine;
private String Equipment;
private String SubRegion;
private String StationNo;
private String PickLocation;
}
package com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.request;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class DeliveryOrderMaterial {
@JsonProperty("MaterialCode")
private String materialCode;
// 将字符串格式的数值转为 double 类型
@JsonProperty("MaterialCodeQty")
private String materialCodeQty;
@JsonProperty("RowNumber")
private String rowNumber;
@JsonProperty("Equipment")
private String equipment;
@JsonProperty("SubRegion")
private String subRegion;
@JsonProperty("StationNo")
private String stationNo;
@JsonProperty("PickLocation")
private String pickLocation;
}
package com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.response;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class DeliveryOrderResponse {
// 对应 JSON 中的 Content(响应内容,可为任意类型)
private Object Content;
// 对应 JSON 中的 IsSuccess(是否成功)
private boolean IsSuccess;
// 对应 JSON 中的 ErrorCode(错误码)
private String ErrorCode;
// 对应 JSON 中的 ErrorMessage(错误信息)
private String ErrorMessage;
}
......@@ -11,6 +11,7 @@ import com.neotel.smfcore.core.order.service.po.LiteOrder;
import com.neotel.smfcore.core.order.service.po.LiteOrderItem;
import com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.request.*;
import com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.response.ApiResponse;
import com.neotel.smfcore.custom.aiqingzhiyin1643.momo.bean.response.DeliveryOrderResponse;
import com.neotel.smfcore.security.annotation.AnonymousAccess;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
......@@ -68,38 +69,40 @@ public class MomoController {
@ApiOperation("接口4:MOM传递出库任务给WMS")
@RequestMapping("/PDAAPI/DeliveryOrder/InsertDeliveryOrder")
@AnonymousAccess
public ApiResponse insertDeliveryOrder(@RequestBody DeliveryOrder deliveryOrder){
log.info("MOM传递出库任务给WMS:"+ JSON.toJSONString(deliveryOrder));
public DeliveryOrderResponse insertDeliveryOrder(@RequestBody DeliveryOrder deliveryOrder) {
log.info("MOM传递出库任务给WMS:" + JSON.toJSONString(deliveryOrder));
//判断存不存在
String orderNo = deliveryOrder.getStockoutNo();
String orderNo = deliveryOrder.getDeliveryOrder();
LiteOrder liteOrder = liteOrderCache.getLiteOrder(orderNo);
if (liteOrder == null){
if (liteOrder == null) {
liteOrder = liteOrderManager.findByOrderNo(orderNo);
}
if (liteOrder != null){
return new ApiResponse("出库任务:"+orderNo+"已经存在",null,"error");
if (liteOrder != null) {
return new DeliveryOrderResponse(null, false, "-1", "出库任务:" + orderNo + "已经存在");
}
liteOrder = createLiteorder(deliveryOrder);
liteOrder = liteOrderManager.createWithItems(liteOrder);
liteOrderCache.addOrderToMap(liteOrder);
return new ApiResponse("接收:"+orderNo+"成功",null,"success");
return new DeliveryOrderResponse(null, true, "", "");
}
private LiteOrder createLiteorder(DeliveryOrder deliveryOrder) {
LiteOrder liteOrder = new LiteOrder();
liteOrder.setOrderNo(deliveryOrder.getStockoutNo());
liteOrder.setOrderNo(deliveryOrder.getDeliveryOrder());
liteOrder.setBillType(deliveryOrder.getBillType());
liteOrder.setMomoType(deliveryOrder.getType());
liteOrder.setCreator(deliveryOrder.getCreator());
List<LiteOrderItem> itemList = new ArrayList<>();
for (DeliveryOrderItem detailItem : deliveryOrder.getDetailItems()) {
for (DeliveryOrderMaterial deliveryOrderMaterial : deliveryOrder.getDeliveryOrderMaterial()) {
LiteOrderItem item = new LiteOrderItem();
item.setRi(detailItem.getContainer());
item.setPn(detailItem.getProductNo());
item.setNeedNum(detailItem.getQuantityOnHand());
item.setStockoutNoLine(detailItem.getStockoutNoLine());
item.setProductName(detailItem.getProductName());
item.setEquipment(detailItem.getEquipment());
item.setSubRegion(detailItem.getSubRegion());
item.setStationNo(detailItem.getStationNo());
item.setPickLocation(detailItem.getPickLocation());
item.setPn(deliveryOrderMaterial.getMaterialCode());
item.setNeedNum((int) Double.parseDouble(deliveryOrderMaterial.getMaterialCodeQty()));
item.setRowNumber(deliveryOrderMaterial.getRowNumber());
item.setEquipment(deliveryOrderMaterial.getEquipment());
item.setSubRegion(deliveryOrderMaterial.getSubRegion());
item.setStationNo(deliveryOrderMaterial.getStationNo());
item.setPickLocation(deliveryOrderMaterial.getPickLocation());
itemList.add(item);
}
liteOrder.setOrderItems(itemList);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!