Commit 2792dcaa zshaohui

1.物料日志任务数量修改

1 个父辈 0ab42aa6
...@@ -703,7 +703,7 @@ public class DataCache { ...@@ -703,7 +703,7 @@ public class DataCache {
* @param amount * @param amount
* @return * @return
*/ */
public synchronized int updateInventoryAmount(String cid, String partNumber, int amount,String barcode) { public int updateInventoryAmount(String cid, String partNumber, int amount,String barcode) {
if (amount != 0) { if (amount != 0) {
InventoryItem inventoryItem = getStorageInventoryByPartNumber(cid, partNumber); InventoryItem inventoryItem = getStorageInventoryByPartNumber(cid, partNumber);
if (inventoryItem == null) { if (inventoryItem == null) {
...@@ -721,7 +721,7 @@ public class DataCache { ...@@ -721,7 +721,7 @@ public class DataCache {
/** /**
* 修改库存,出库为负,入库为正 * 修改库存,出库为负,入库为正
*/ */
public int updateInventory(StoragePos pos, Barcode barcode) { public synchronized int updateInventory(StoragePos pos, Barcode barcode) {
Storage storage = getStorageById(pos.getStorageId()); Storage storage = getStorageById(pos.getStorageId());
String cid = storage.getCid(); String cid = storage.getCid();
String partNumber = barcode.getPartNumber(); String partNumber = barcode.getPartNumber();
......
...@@ -17,6 +17,7 @@ import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager; ...@@ -17,6 +17,7 @@ import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager;
import com.neotel.smfcore.core.order.service.po.LiteOrder; import com.neotel.smfcore.core.order.service.po.LiteOrder;
import com.neotel.smfcore.core.order.service.po.LiteOrderItem; import com.neotel.smfcore.core.order.service.po.LiteOrderItem;
import com.neotel.smfcore.core.storage.bean.InventoryItem; import com.neotel.smfcore.core.storage.bean.InventoryItem;
import com.neotel.smfcore.core.storage.service.po.StoragePos;
import com.neotel.smfcore.core.system.service.manager.IDataLogManager; import com.neotel.smfcore.core.system.service.manager.IDataLogManager;
import com.neotel.smfcore.core.system.service.po.DataLog; import com.neotel.smfcore.core.system.service.po.DataLog;
import com.neotel.smfcore.core.system.util.TaskService; import com.neotel.smfcore.core.system.util.TaskService;
...@@ -95,17 +96,19 @@ public class IriichiApi extends BaseSmfApiListener { ...@@ -95,17 +96,19 @@ public class IriichiApi extends BaseSmfApiListener {
@Override @Override
public void inTaskStatusChange(String inNotifyUrl, DataLog task) { public void inTaskStatusChange(String inNotifyUrl, DataLog task) {
if ((task.isFinished() || task.isEnd()) && task.isPutInTask()) { if ((task.isFinished() || task.isEnd()) && task.isPutInTask()) {
List<InventoryItem> itemList = dataCache.getInventoryByPN(task.getPartNumber(), new ArrayList<>());
if (itemList == null || itemList.isEmpty()) {
task.setTotalNum(0);
} else {
int totalNum = 0; int totalNum = 0;
for (InventoryItem inventoryItem : itemList) { List<Map<String, StoragePos>> allUsedPosMap = dataCache.getAllUsedPosMap();
totalNum = totalNum + inventoryItem.getStockCount(); for (Map<String, StoragePos> map : allUsedPosMap) {
for (StoragePos pos : map.values()) {
Barcode barcode = pos.getBarcode();
if (barcode != null){
if (barcode.getPartNumber().equals(task.getPartNumber())){
totalNum = totalNum + 1;
} }
task.setTotalNum(totalNum);
} }
}
}
task.setTotalNum(totalNum);
//taskService.moveTaskToFinished(task); //taskService.moveTaskToFinished(task);
dataLogManager.save(task); dataLogManager.save(task);
} }
...@@ -114,16 +117,19 @@ public class IriichiApi extends BaseSmfApiListener { ...@@ -114,16 +117,19 @@ public class IriichiApi extends BaseSmfApiListener {
@Override @Override
public void outTaskStatusChange(String outNotifyUrl, DataLog task) { public void outTaskStatusChange(String outNotifyUrl, DataLog task) {
if ((task.isFinished() || task.isEnd() || task.isWait() || task.isCancel()) && task.isCheckOutTask()) { if ((task.isFinished() || task.isEnd() || task.isWait() || task.isCancel()) && task.isCheckOutTask()) {
List<InventoryItem> itemList = dataCache.getInventoryByPN(task.getPartNumber(), new ArrayList<>());
if (itemList == null || itemList.isEmpty()) {
task.setTotalNum(0);
} else {
int totalNum = 0; int totalNum = 0;
for (InventoryItem inventoryItem : itemList) { List<Map<String, StoragePos>> allUsedPosMap = dataCache.getAllUsedPosMap();
totalNum = totalNum + inventoryItem.getStockCount(); for (Map<String, StoragePos> map : allUsedPosMap) {
for (StoragePos pos : map.values()) {
Barcode barcode = pos.getBarcode();
if (barcode != null){
if (barcode.getPartNumber().equals(task.getPartNumber())){
totalNum = totalNum + 1;
}
} }
task.setTotalNum(totalNum);
} }
}
task.setTotalNum(totalNum);
if (task.isFinished() || task.isEnd() || task.isCancel()){ if (task.isFinished() || task.isEnd() || task.isCancel()){
taskService.moveTaskToFinished(task); taskService.moveTaskToFinished(task);
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!