|
|
|
@ -298,32 +298,42 @@ public class MaterialServiceImpl implements MaterialService { |
|
|
|
} |
|
|
|
map.put("state", state); |
|
|
|
List<Inventory> list = materialMapper.findInventory(map); |
|
|
|
for (Inventory inventory : list) { |
|
|
|
if (inventory.getPrice() != null) { |
|
|
|
inventory.setPrice(inventory.getPrice() / 100); |
|
|
|
} else { |
|
|
|
inventory.setPrice(0.0); |
|
|
|
return pack(list); |
|
|
|
} |
|
|
|
inventory.setAmounts(inventory.getPrice() * inventory.getQuantity()); |
|
|
|
// 获取当前物料所处仓库
|
|
|
|
Integer depositoryId = inventory.getDepositoryId(); |
|
|
|
// 获取当前物料所处库位
|
|
|
|
Integer mid = inventory.getId(); |
|
|
|
List<PlaceP> placeByMidAndDid = placeService.findPlaceByMidAndDid(mid, depositoryId); |
|
|
|
StringBuilder placeCode = new StringBuilder(); |
|
|
|
StringBuilder placeKingdeeCode = new StringBuilder(); |
|
|
|
for (PlaceP placeP : placeByMidAndDid) { |
|
|
|
placeKingdeeCode.append(placeP.getKingdeecode()).append(" "); |
|
|
|
placeCode.append(placeP.getCode()).append(" "); |
|
|
|
|
|
|
|
/** |
|
|
|
* 根据条件查询符合条件的库存数量 |
|
|
|
* @param map |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public Integer findInventoryCountByDids(Map<String, Object> map) { |
|
|
|
return materialMapper.findInventoryCountByDids(map); |
|
|
|
} |
|
|
|
if (depositoryId != null) { |
|
|
|
Depository depositoryRecordById = depositoryMapper.findDepositoryById(depositoryId); |
|
|
|
String code = depositoryRecordById.getCode(); |
|
|
|
inventory.setDepositoryCode(code); |
|
|
|
|
|
|
|
/** |
|
|
|
* 根据条件查询符合条件的库存 |
|
|
|
* |
|
|
|
* @param map |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<InventoryP> findInventoryByDids(Map<String, Object> map) { |
|
|
|
Integer size = 10, page = 1; |
|
|
|
if (map.containsKey("size")) { |
|
|
|
size = ObjectFormatUtil.toInteger(map.get("size")); |
|
|
|
map.put("size", size); |
|
|
|
} |
|
|
|
inventory.setPlaceCode(placeCode.toString()); |
|
|
|
inventory.setPlaceKingdeeCode(placeKingdeeCode.toString()); |
|
|
|
if (map.containsKey("page")) { |
|
|
|
page = ObjectFormatUtil.toInteger(map.get("page")); |
|
|
|
map.put("begin", (page - 1) * size); |
|
|
|
} |
|
|
|
Object state = 1; |
|
|
|
if (map.containsKey("state")) { |
|
|
|
state = map.get("state"); |
|
|
|
} |
|
|
|
map.put("state", state); |
|
|
|
List<Inventory> list = materialMapper.findInventoryByDids(map); |
|
|
|
return pack(list); |
|
|
|
} |
|
|
|
|
|
|
|
@ -754,10 +764,34 @@ public class MaterialServiceImpl implements MaterialService { |
|
|
|
*/ |
|
|
|
private List<InventoryP> pack(List<Inventory> list) { |
|
|
|
List<InventoryP> result = new ArrayList<>(list.size()); |
|
|
|
|
|
|
|
for (Inventory inventory : list) { |
|
|
|
if (inventory.getPrice() != null) { |
|
|
|
inventory.setPrice(inventory.getPrice() / 100); |
|
|
|
} else { |
|
|
|
inventory.setPrice(0.0); |
|
|
|
} |
|
|
|
inventory.setAmounts(inventory.getPrice() * inventory.getQuantity()); |
|
|
|
// 获取当前物料所处仓库
|
|
|
|
Integer depositoryId = inventory.getDepositoryId(); |
|
|
|
// 获取当前物料所处库位
|
|
|
|
Integer mid = inventory.getId(); |
|
|
|
List<PlaceP> placeByMidAndDid = placeService.findPlaceByMidAndDid(mid, depositoryId); |
|
|
|
StringBuilder placeCode = new StringBuilder(); |
|
|
|
StringBuilder placeKingdeeCode = new StringBuilder(); |
|
|
|
for (PlaceP placeP : placeByMidAndDid) { |
|
|
|
placeKingdeeCode.append(placeP.getKingdeecode()).append(" "); |
|
|
|
placeCode.append(placeP.getCode()).append(" "); |
|
|
|
} |
|
|
|
if (depositoryId != null) { |
|
|
|
Depository depositoryRecordById = depositoryMapper.findDepositoryById(depositoryId); |
|
|
|
String code = depositoryRecordById.getCode(); |
|
|
|
inventory.setDepositoryCode(code); |
|
|
|
} |
|
|
|
inventory.setPlaceCode(placeCode.toString()); |
|
|
|
inventory.setPlaceKingdeeCode(placeKingdeeCode.toString()); |
|
|
|
InventoryP m = new InventoryP(inventory); |
|
|
|
Integer warningCount = 0; |
|
|
|
Integer depositoryId = inventory.getDepositoryId(); |
|
|
|
if (depositoryId != null) { |
|
|
|
m.setDepositoryName(depositoryMapper.findDepositoryNameById(depositoryId)); |
|
|
|
m.setWarehouseManager(depositoryMapper.findUserNameByDepositoryId(depositoryId)); |
|
|
|
@ -807,10 +841,6 @@ public class MaterialServiceImpl implements MaterialService { |
|
|
|
m.setTypeId(materialTypeByOldId.getOldId()); |
|
|
|
m.setWarningCount(warningCount); |
|
|
|
|
|
|
|
// 查询当前物料在该仓库中的库位位置
|
|
|
|
List<PlaceP> placeByMidAndDid = placeService.findPlaceByMidAndDid(m.getId(), m.getDepositoryId()); |
|
|
|
|
|
|
|
|
|
|
|
Map<String, Double> splitInventoryForUnit = new HashMap<>(); |
|
|
|
splitInventoryForUnit.put(inventory.getUnit(), (double) inventory.getQuantity() / 100); |
|
|
|
m.setBaseUnitQuantity((double) inventory.getQuantity() / 100); |
|
|
|
@ -993,7 +1023,6 @@ public class MaterialServiceImpl implements MaterialService { |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
double quantity = Double.parseDouble(map.get("quantity").toString()); |
|
|
|
double quantity_residue = 0; |
|
|
|
int splitInfoScaleQuantity = 0; |
|
|
|
|