Commit f89c27d4 hjh

Merge remote-tracking branch 'origin/master'

2 个父辈 d6f0806e 6a7ed1d0
...@@ -919,6 +919,7 @@ public class BaseDeviceHandler implements IDeviceHandler { ...@@ -919,6 +919,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
needSaveToMongo = statusBean.needSaveToMongo(); needSaveToMongo = statusBean.needSaveToMongo();
} }
statusBean.setTime(System.currentTimeMillis()); statusBean.setTime(System.currentTimeMillis());
statusBean.setOfflineTime(-1);
Map<String, BoxStatusBean> statusOfBoxes = statusBeanToSave.getBoxStatus(); Map<String, BoxStatusBean> statusOfBoxes = statusBeanToSave.getBoxStatus();
statusBean.setBoxStatus(statusOfBoxes); statusBean.setBoxStatus(statusOfBoxes);
......
...@@ -167,6 +167,6 @@ public class MimoG3BoxHandler extends BaseDeviceHandler{ ...@@ -167,6 +167,6 @@ public class MimoG3BoxHandler extends BaseDeviceHandler{
@Override @Override
public DeviceType getDeviceType() { public DeviceType getDeviceType() {
return DeviceType.SMD_MIMO_G2; return DeviceType.SMD_MIMO_G3;
} }
} }
...@@ -335,13 +335,18 @@ public class NLShelfHandler extends BaseDeviceHandler { ...@@ -335,13 +335,18 @@ public class NLShelfHandler extends BaseDeviceHandler {
return ResultBean.newOkResult("smfcore.shelf.msg.tipScanReel", "库位[" + pos.getPosName() + "]操作成功,请扫描要放入的物料", new String[]{pos.getPosName()},pos.getPosName()); return ResultBean.newOkResult("smfcore.shelf.msg.tipScanReel", "库位[" + pos.getPosName() + "]操作成功,请扫描要放入的物料", new String[]{pos.getPosName()},pos.getPosName());
} }
} else { } else {
//先判断库存中有没有此条码 ResultBean resultBean;
ResultBean resultBean = outProcess(storageId,code,sourceId, loginUser,request); try {
if(resultBean != null){ //先判断库存中有没有此条码
return resultBean; resultBean = outProcess(storageId, code, sourceId, loginUser, request);
if(resultBean!=null) {
return resultBean;
}
} catch (Exception exa) {
log.error(exa.toString());
} }
resultBean = putInProcess(groupId, storageId, code, token, loginUser); resultBean = putInProcess(groupId, storageId, code, token, loginUser);
if(resultBean != null){ if (resultBean != null) {
return resultBean; return resultBean;
} }
} }
......
...@@ -23,6 +23,8 @@ import com.neotel.smfcore.core.storage.bean.InventoryItem; ...@@ -23,6 +23,8 @@ import com.neotel.smfcore.core.storage.bean.InventoryItem;
import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE; import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE;
import com.neotel.smfcore.core.storage.enums.COMPATIBLE_TYPE; import com.neotel.smfcore.core.storage.enums.COMPATIBLE_TYPE;
import com.neotel.smfcore.core.storage.enums.DeviceType; import com.neotel.smfcore.core.storage.enums.DeviceType;
import com.neotel.smfcore.core.storage.rest.dto.InventoryItemDto;
import com.neotel.smfcore.core.storage.rest.query.InventoryQueryCriteria;
import com.neotel.smfcore.core.storage.service.po.StoragePos; import com.neotel.smfcore.core.storage.service.po.StoragePos;
import com.neotel.smfcore.core.system.bean.OrderSetting; import com.neotel.smfcore.core.system.bean.OrderSetting;
import com.neotel.smfcore.core.system.service.dao.ICacheItemDao; import com.neotel.smfcore.core.system.service.dao.ICacheItemDao;
...@@ -38,6 +40,7 @@ import org.apache.logging.log4j.LogManager; ...@@ -38,6 +40,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.apache.poi.ss.formula.functions.T; import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort; import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Query;
...@@ -47,6 +50,7 @@ import javax.annotation.PostConstruct; ...@@ -47,6 +50,7 @@ import javax.annotation.PostConstruct;
import java.util.*; import java.util.*;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import java.util.stream.Collectors;
/** /**
* 缓存 * 缓存
...@@ -658,6 +662,20 @@ public class DataCache { ...@@ -658,6 +662,20 @@ public class DataCache {
return storageInventoryMap; return storageInventoryMap;
} }
public List<InventoryItem> getInventoryByPN(String pn) {
Map<String, InventoryItem> inventoryItemMap = getAllInventory(null, "");
List<InventoryItem> list = Lists.newArrayList(inventoryItemMap.values());
List<InventoryItem> resultList = new ArrayList<>();
for (InventoryItem item : list
) {
if (item.getPartNumber().equals(pn)&&item.getStockCount()>0) {
resultList.add(item);
}
}
return resultList;
}
/** /**
* 手动修改数量的时候更新库存 * 手动修改数量的时候更新库存
* @param cid * @param cid
......
...@@ -36,7 +36,9 @@ public class EquipmentCache { ...@@ -36,7 +36,9 @@ public class EquipmentCache {
map.put(equipment.getCid(), equipment); map.put(equipment.getCid(), equipment);
} }
allEquipment = map; allEquipment = map;
log.info("加载所有设备["+all.size()+"]信息到缓存"); if(all.size()>0) {
log.info("加载所有设备[" + all.size() + "]信息到缓存");
}
} }
} }
} }
......
...@@ -600,8 +600,7 @@ public class LiteOrderCache { ...@@ -600,8 +600,7 @@ public class LiteOrderCache {
//剩余未出盘数 //剩余未出盘数
int remainReelCount = orderItem.getNeedReelCount() - orderItem.getTotalOutReelCount(); int remainReelCount = orderItem.getNeedReelCount() - orderItem.getTotalOutReelCount();
Collection<String> excludePosIds = excludeOutPosIds();
excludePosIds.addAll(findPosIds);
//此PN未完成 //此PN未完成
if (remainNum > 0 || remainReelCount > 0) { if (remainNum > 0 || remainReelCount > 0) {
if (outBom) { if (outBom) {
...@@ -612,6 +611,8 @@ public class LiteOrderCache { ...@@ -612,6 +611,8 @@ public class LiteOrderCache {
int assignNum = 0; int assignNum = 0;
int assignReelCount = 0; int assignReelCount = 0;
while (assignNum < remainNum || assignReelCount < remainReelCount) { while (assignNum < remainNum || assignReelCount < remainReelCount) {
Collection<String> excludePosIds = excludeOutPosIds();
excludePosIds.addAll(findPosIds);
String partNumber = orderItem.getPn(); String partNumber = orderItem.getPn();
String reelId = orderItem.getRi(); String reelId = orderItem.getRi();
String mpn = orderItem.getMpn(); String mpn = orderItem.getMpn();
......
...@@ -102,7 +102,8 @@ public class Storage extends BasePo implements Serializable { ...@@ -102,7 +102,8 @@ public class Storage extends BasePo implements Serializable {
* @return * @return
*/ */
public boolean isMimoG2(){ public boolean isMimoG2(){
return DeviceType.SMD_MIMO_G2.name().equals(type); //MIMOG2和G3统一处理
return (DeviceType.SMD_MIMO_G2.name().equals(type))||(DeviceType.SMD_MIMO_G3.name().equals(type));
} }
/** /**
* 是否是单台自动仓 * 是否是单台自动仓
......
...@@ -204,6 +204,7 @@ public class DevicesStatusUtil { ...@@ -204,6 +204,7 @@ public class DevicesStatusUtil {
StatusBean statusBean = new StatusBean(); StatusBean statusBean = new StatusBean();
statusBean.setCid(cid); statusBean.setCid(cid);
statusBean.setTime(System.currentTimeMillis()); statusBean.setTime(System.currentTimeMillis());
statusBean.setOfflineTime(-1);
statusBean.setMsgList(msgs); statusBean.setMsgList(msgs);
clientMsgs.put(cid, statusBean); clientMsgs.put(cid, statusBean);
return statusBean; return statusBean;
......
...@@ -12,16 +12,17 @@ import java.util.TimerTask; ...@@ -12,16 +12,17 @@ import java.util.TimerTask;
@Slf4j @Slf4j
public class MyWebSocketClient extends WebSocketClient { public class MyWebSocketClient extends WebSocketClient {
private String url="";
private WsMsgReceivedListener msgReceivedListener; // 消息接收监听器 private WsMsgReceivedListener msgReceivedListener; // 消息接收监听器
public MyWebSocketClient(URI serverUri, WsMsgReceivedListener listener) { public MyWebSocketClient(URI serverUri, WsMsgReceivedListener listener) {
super(serverUri); super(serverUri);
url=serverUri.toString();
this.msgReceivedListener =listener; this.msgReceivedListener =listener;
} }
@Override @Override
public void onOpen(ServerHandshake serverHandshake) { public void onOpen(ServerHandshake serverHandshake) {
log.info("onOpen "); log.info(url+":" +(new Date().toString()) + "connect webSServer ok ");
log.info((new Date().toString()) + "connect webSServer ok ");
cancelReconnect(); cancelReconnect();
if(msgReceivedListener!=null) { if(msgReceivedListener!=null) {
msgReceivedListener.onOpen(); msgReceivedListener.onOpen();
...@@ -41,20 +42,20 @@ public class MyWebSocketClient extends WebSocketClient { ...@@ -41,20 +42,20 @@ public class MyWebSocketClient extends WebSocketClient {
@Override @Override
public void onClose(int i, String s, boolean b) { public void onClose(int i, String s, boolean b) {
log.info("onClose: code:{} reason:{} {}", i, s, b); log.info(url+":" +"onClose: code:{} reason:{} {}", i, s, b);
startReconnect(); startReconnect();
} }
@Override @Override
public void onError(Exception e) { public void onError(Exception e) {
log.error("web socket client onerror :"+e.toString()); log.error(url+":" +"web socket client onerror :"+e.toString());
//关闭后重新连接 //关闭后重新连接
try { try {
close(); close();
}catch (Exception ex){ }catch (Exception ex){
log.error("web socket client onerror close error:"+e.toString()); log.error(url+":" +"web socket client onerror close error:"+e.toString());
} }
startReconnect(); startReconnect();
} }
......
...@@ -45,6 +45,9 @@ public class TMSApis { ...@@ -45,6 +45,9 @@ public class TMSApis {
item.setReelCode(getMapValue(map, "ReelCode")); item.setReelCode(getMapValue(map, "ReelCode"));
item.setResponseCount((Integer)getMapValue(map, "Count")); item.setResponseCount((Integer)getMapValue(map, "Count"));
item.setRequestCount((Integer)getMapValue(map, "Count")); item.setRequestCount((Integer)getMapValue(map, "Count"));
item.setProductionDate(getMapValue(map,"ProductionDate"));
item.setExpiryDate(getMapValue(map,"ExpiryDate"));
item.setWarehousingDate(getMapValue(map,"WarehousingDate"));
list.add(item); list.add(item);
......
...@@ -78,7 +78,7 @@ public class TMS_Code { ...@@ -78,7 +78,7 @@ public class TMS_Code {
public static final String CODE_1024 = "1024"; public static final String CODE_1024 = "1024";
/** /**
* 2001 Part not enough * 2001 Part not enough 数量不足
*/ */
public static final String CODE_2001 = "2001"; public static final String CODE_2001 = "2001";
......
...@@ -24,6 +24,14 @@ public class TMSPart extends TMSPos implements Serializable { ...@@ -24,6 +24,14 @@ public class TMSPart extends TMSPos implements Serializable {
private int responseCount = 0; private int responseCount = 0;
private String resultCode = ""; private String resultCode = "";
public String ProductionDate ="";
public String ExpiryDate = "";
public String WarehousingDate = "";
public static TMSPart newBean(int index, String pn,String barcode,int requestCount,int responseCount,String resultCode,String cid,String posName ) { public static TMSPart newBean(int index, String pn,String barcode,int requestCount,int responseCount,String resultCode,String cid,String posName ) {
TMSPart bean = new TMSPart(); TMSPart bean = new TMSPart();
bean.setIndex(index); bean.setIndex(index);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!