|
|
@ -130,32 +130,16 @@ public class MaterialController { |
|
|
size = ObjectFormatUtil.toInteger(map.get("size")); |
|
|
size = ObjectFormatUtil.toInteger(map.get("size")); |
|
|
} |
|
|
} |
|
|
if (!(map.containsKey("depositoryId") || map.containsKey("code") || map.containsKey("mname"))) { |
|
|
if (!(map.containsKey("depositoryId") || map.containsKey("code") || map.containsKey("mname"))) { |
|
|
|
|
|
// 用于标识是一次就查询成功
|
|
|
|
|
|
boolean flag = true; |
|
|
for (Depository depository : depositoryByAdminorg) { |
|
|
for (Depository depository : depositoryByAdminorg) { |
|
|
Integer did = depository.getId(); |
|
|
Integer did = depository.getId(); |
|
|
didList.add(did); |
|
|
didList.add(did); |
|
|
map.put("depositoryId", did); |
|
|
map.put("depositoryId", did); |
|
|
List<InventoryP> inventory = materialService.findInventory(map); |
|
|
List<InventoryP> inventory = null; |
|
|
|
|
|
if (!flag) { |
|
|
total += materialService.findInventoryCount(map); |
|
|
// 如果不是一次成功
|
|
|
if (list.size() < size) { |
|
|
page = ObjectFormatUtil.toInteger(map.get("page")); |
|
|
list.addAll(inventory); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
if (list.size() < size) { |
|
|
|
|
|
for (RoleAndDepository roleAndDepository : depositoryAndRole) { |
|
|
|
|
|
Integer depositoryId = roleAndDepository.getDepositoryId(); |
|
|
|
|
|
if (didList.contains(depositoryId)) { |
|
|
|
|
|
// 如果当前仓库编号存在
|
|
|
|
|
|
continue; // 跳过本次循环
|
|
|
|
|
|
} |
|
|
|
|
|
map.put("depositoryId", depositoryId); |
|
|
|
|
|
// 如果当前数目不足
|
|
|
|
|
|
if (map.containsKey("page")) { |
|
|
|
|
|
// 当前页
|
|
|
|
|
|
page = ObjectFormatUtil.toInteger(map.get("page")); |
|
|
|
|
|
} |
|
|
|
|
|
// 计算所有页数
|
|
|
|
|
|
// 判断当前是在全新一页还是包含上述内容
|
|
|
|
|
|
if (size - list.size() != size) { |
|
|
if (size - list.size() != size) { |
|
|
// 如果当前不是崭新一页
|
|
|
// 如果当前不是崭新一页
|
|
|
map.put("begin", 0); |
|
|
map.put("begin", 0); |
|
|
@ -163,10 +147,51 @@ public class MaterialController { |
|
|
map.put("begin", (page - 1) * size - total); |
|
|
map.put("begin", (page - 1) * size - total); |
|
|
} |
|
|
} |
|
|
map.put("size", size - list.size()); |
|
|
map.put("size", size - list.size()); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
if (!map.containsKey("begin")) { |
|
|
|
|
|
inventory = materialService.findInventory(map); |
|
|
|
|
|
} else { |
|
|
|
|
|
inventory = materialService.findInventoryByDepository(map); |
|
|
|
|
|
} |
|
|
|
|
|
total += materialService.findInventoryCount(map); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (list.size() < size) { |
|
|
|
|
|
list.addAll(inventory); |
|
|
|
|
|
// 如果本次没有达到数目
|
|
|
|
|
|
if (list.size() < size) { |
|
|
|
|
|
flag = false; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
for (RoleAndDepository roleAndDepository : depositoryAndRole) { |
|
|
|
|
|
Integer depositoryId = roleAndDepository.getDepositoryId(); |
|
|
|
|
|
if (didList.contains(depositoryId)) { |
|
|
|
|
|
// 如果当前仓库编号存在
|
|
|
|
|
|
continue; // 跳过本次循环
|
|
|
|
|
|
} |
|
|
|
|
|
map.put("depositoryId", depositoryId); |
|
|
|
|
|
// 如果当前数目不足
|
|
|
|
|
|
if (map.containsKey("page")) { |
|
|
|
|
|
// 当前页
|
|
|
|
|
|
page = ObjectFormatUtil.toInteger(map.get("page")); |
|
|
|
|
|
} |
|
|
|
|
|
// 计算所有页数
|
|
|
|
|
|
// 判断当前是在全新一页还是包含上述内容
|
|
|
|
|
|
if (size - list.size() != size) { |
|
|
|
|
|
// 如果当前不是崭新一页
|
|
|
|
|
|
map.put("begin", 0); |
|
|
|
|
|
} else { |
|
|
|
|
|
map.put("begin", (page - 1) * size - total); |
|
|
|
|
|
} |
|
|
|
|
|
map.put("size", size - list.size()); |
|
|
|
|
|
if (list.size() < size) { |
|
|
List<InventoryP> materialByDepository = materialService.findInventoryByDepository(map); |
|
|
List<InventoryP> materialByDepository = materialService.findInventoryByDepository(map); |
|
|
list.addAll(materialByDepository); |
|
|
list.addAll(materialByDepository); |
|
|
total += materialService.findMaterialByDepositoryCount(map); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
total += materialService.findMaterialByDepositoryCount(map); |
|
|
} |
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
List<InventoryP> inventory = materialService.findInventory(map); |
|
|
List<InventoryP> inventory = materialService.findInventory(map); |
|
|
@ -653,8 +678,7 @@ public class MaterialController { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} else { |
|
|
else { |
|
|
|
|
|
// 获取当前要转移的库位
|
|
|
// 获取当前要转移的库位
|
|
|
Place place = placeService.findPlaceById(placeId); |
|
|
Place place = placeService.findPlaceById(placeId); |
|
|
if (Integer.compare(place.getId(), 0) != 0) { |
|
|
if (Integer.compare(place.getId(), 0) != 0) { |
|
|
@ -756,7 +780,7 @@ public class MaterialController { |
|
|
int codeFlag = ObjectFormatUtil.toInteger(map.get("codeFlag")); |
|
|
int codeFlag = ObjectFormatUtil.toInteger(map.get("codeFlag")); |
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
if(mcode == null){ |
|
|
if (mcode == null) { |
|
|
return new RestResponse(null); |
|
|
return new RestResponse(null); |
|
|
} |
|
|
} |
|
|
// 根据物料编码获取物料
|
|
|
// 根据物料编码获取物料
|
|
|
@ -796,8 +820,7 @@ public class MaterialController { |
|
|
mp.setSplitInfoList(splitInfoByMid); |
|
|
mp.setSplitInfoList(splitInfoByMid); |
|
|
return new RestResponse(mp); |
|
|
return new RestResponse(mp); |
|
|
} |
|
|
} |
|
|
} |
|
|
} else { |
|
|
else { |
|
|
|
|
|
return new RestResponse(null); |
|
|
return new RestResponse(null); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -815,7 +838,7 @@ public class MaterialController { |
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
InventoryP mp = null; |
|
|
InventoryP mp = null; |
|
|
if(mcode == null){ |
|
|
if (mcode == null) { |
|
|
return new RestResponse(mp); |
|
|
return new RestResponse(mp); |
|
|
} |
|
|
} |
|
|
// 根据物料编码获取物料
|
|
|
// 根据物料编码获取物料
|
|
|
@ -868,7 +891,7 @@ public class MaterialController { |
|
|
|
|
|
|
|
|
InventoryP mp = null; |
|
|
InventoryP mp = null; |
|
|
|
|
|
|
|
|
if(mcode == null){ |
|
|
if (mcode == null) { |
|
|
return new RestResponse(mp); |
|
|
return new RestResponse(mp); |
|
|
} |
|
|
} |
|
|
// 根据物料编码获取物料
|
|
|
// 根据物料编码获取物料
|
|
|
@ -980,7 +1003,7 @@ public class MaterialController { |
|
|
String qrCode = (String) map.get("qrCode"); |
|
|
String qrCode = (String) map.get("qrCode"); |
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
// 根据扫描的二维码获取对应的物料编码
|
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
String mcode = materialService.findMaterialCodeByQrCode(qrCode); |
|
|
if(mcode == null){ |
|
|
if (mcode == null) { |
|
|
return new RestResponse(null); |
|
|
return new RestResponse(null); |
|
|
} |
|
|
} |
|
|
// 根据物料编码获取物料
|
|
|
// 根据物料编码获取物料
|
|
|
|