Showing
1 changed file
with
52 additions
and
88 deletions
| ... | ... | @@ -74,6 +74,7 @@ import java.util.*; |
| 74 | 74 | import java.util.List; |
| 75 | 75 | import java.util.function.Function; |
| 76 | 76 | import java.util.stream.Collectors; |
| 77 | +import java.util.stream.Stream; | |
| 77 | 78 | |
| 78 | 79 | /** |
| 79 | 80 | * 经销标准合同 Controller |
| ... | ... | @@ -261,51 +262,32 @@ public class ContractDistributorStandardController extends DefaultBaseController |
| 261 | 262 | } |
| 262 | 263 | //合同状态(标准合同列表展示) |
| 263 | 264 | if (vo != null && "STANDARD".equals(vo.getStatus())) { |
| 264 | - //合同ID | |
| 265 | - String id = bo.getId(); | |
| 266 | - QueryPurchaseOrderInfoVo vo1 = new QueryPurchaseOrderInfoVo(); | |
| 267 | - vo1.setContractId(id); | |
| 268 | - vo1.setExamineStatus("AUDIT"); | |
| 269 | - vo1.setType("PRODUCTION"); | |
| 270 | - List<PurchaseOrderInfo> query1 = purchaseOrderInfoService.query(vo1); | |
| 271 | - if (CollectionUtils.isNotEmpty(query1)) { | |
| 272 | - bo.setShippingStatusName("审批中"); | |
| 273 | - } else { | |
| 274 | - QueryPurchaseOrderInfoVo vo2 = new QueryPurchaseOrderInfoVo(); | |
| 275 | - vo2.setContractId(id); | |
| 276 | - vo2.setStatus("ISSUED"); | |
| 277 | - vo2.setType("PRODUCTION"); | |
| 278 | - List<PurchaseOrderInfo> query2 = purchaseOrderInfoService.query(vo2); | |
| 279 | - if (CollectionUtils.isNotEmpty(query2)) { | |
| 280 | - bo.setShippingStatusName("生产中"); | |
| 281 | - } else { | |
| 282 | - QueryPurchaseOrderInfoVo vo3 = new QueryPurchaseOrderInfoVo(); | |
| 283 | - vo3.setContractId(id); | |
| 284 | - vo3.setStatus("TRANSIT"); | |
| 285 | - vo3.setType("PRODUCTION"); | |
| 286 | - List<PurchaseOrderInfo> query3 = purchaseOrderInfoService.query(vo3); | |
| 287 | - if (CollectionUtils.isNotEmpty(query3)) { | |
| 288 | - bo.setShippingStatusName("已发货"); | |
| 289 | - } else { | |
| 290 | - QueryPurchaseOrderInfoVo vo4 = new QueryPurchaseOrderInfoVo(); | |
| 291 | - vo4.setContractId(id); | |
| 292 | - vo4.setStatus("SHIPPED"); | |
| 293 | - vo4.setType("PRODUCTION"); | |
| 294 | - List<PurchaseOrderInfo> query4 = purchaseOrderInfoService.query(vo4); | |
| 295 | - if (CollectionUtils.isNotEmpty(query4)) { | |
| 296 | - bo.setShippingStatusName("已发货"); | |
| 297 | - } else { | |
| 298 | - QueryPurchaseOrderInfoVo vo5 = new QueryPurchaseOrderInfoVo(); | |
| 299 | - vo5.setContractId(id); | |
| 300 | - vo5.setStatus("DELIVERED"); | |
| 301 | - vo5.setType("PRODUCTION"); | |
| 302 | - List<PurchaseOrderInfo> query5 = purchaseOrderInfoService.query(vo5); | |
| 303 | - if (CollectionUtils.isNotEmpty(query5)) { | |
| 304 | - bo.setShippingStatusName("已签收"); | |
| 305 | - } | |
| 306 | - } | |
| 307 | - } | |
| 308 | - } | |
| 265 | + String contractId = bo.getId(); | |
| 266 | + String shippingStatusName = Stream.of( | |
| 267 | + new Object[]{"AUDIT", null, "审批中"}, | |
| 268 | + new Object[]{null, "ISSUED", "生产中"}, | |
| 269 | + new Object[]{null, "WAIT", "生产中"}, | |
| 270 | + new Object[]{null, "TRANSIT", "已发货"}, | |
| 271 | + new Object[]{null, "SHIPPED", "已发货"}, | |
| 272 | + new Object[]{null, "DELIVERED", "已签收"}, | |
| 273 | + new Object[]{null, "CANCEL", "已取消"} | |
| 274 | + ) | |
| 275 | + .filter(check -> { | |
| 276 | + QueryPurchaseOrderInfoVo queryVo = new QueryPurchaseOrderInfoVo(); | |
| 277 | + queryVo.setContractId(contractId); | |
| 278 | + queryVo.setType("PRODUCTION"); | |
| 279 | + if (check[0] != null) queryVo.setExamineStatus((String) check[0]); | |
| 280 | + if (check[1] != null) queryVo.setStatus((String) check[1]); | |
| 281 | + | |
| 282 | + List<PurchaseOrderInfo> query = purchaseOrderInfoService.query(queryVo); | |
| 283 | + return CollectionUtils.isNotEmpty(query); | |
| 284 | + }) | |
| 285 | + .map(check -> (String) check[2]) | |
| 286 | + .findFirst() | |
| 287 | + .orElse(null); | |
| 288 | + | |
| 289 | + if (shippingStatusName != null) { | |
| 290 | + bo.setShippingStatusName(shippingStatusName); | |
| 309 | 291 | } |
| 310 | 292 | } |
| 311 | 293 | }); |
| ... | ... | @@ -425,49 +407,31 @@ public class ContractDistributorStandardController extends DefaultBaseController |
| 425 | 407 | } |
| 426 | 408 | //合同状态(标准合同列表展示) |
| 427 | 409 | if ("STANDARD".equals(data.getStatus())) { |
| 428 | - QueryPurchaseOrderInfoVo vo1 = new QueryPurchaseOrderInfoVo(); | |
| 429 | - vo1.setContractId(id); | |
| 430 | - vo1.setExamineStatus("AUDIT"); | |
| 431 | - vo1.setType("PRODUCTION"); | |
| 432 | - List<PurchaseOrderInfo> query1 = purchaseOrderInfoService.query(vo1); | |
| 433 | - if (CollectionUtils.isNotEmpty(query1)) { | |
| 434 | - result.setShippingStatusName("审批中"); | |
| 435 | - } else { | |
| 436 | - QueryPurchaseOrderInfoVo vo2 = new QueryPurchaseOrderInfoVo(); | |
| 437 | - vo2.setContractId(id); | |
| 438 | - vo2.setStatus("ISSUED"); | |
| 439 | - vo2.setType("PRODUCTION"); | |
| 440 | - List<PurchaseOrderInfo> query2 = purchaseOrderInfoService.query(vo2); | |
| 441 | - if (CollectionUtils.isNotEmpty(query2)) { | |
| 442 | - result.setShippingStatusName("生产中"); | |
| 443 | - } else { | |
| 444 | - QueryPurchaseOrderInfoVo vo3 = new QueryPurchaseOrderInfoVo(); | |
| 445 | - vo3.setContractId(id); | |
| 446 | - vo3.setStatus("TRANSIT"); | |
| 447 | - vo3.setType("PRODUCTION"); | |
| 448 | - List<PurchaseOrderInfo> query3 = purchaseOrderInfoService.query(vo3); | |
| 449 | - if (CollectionUtils.isNotEmpty(query3)) { | |
| 450 | - result.setShippingStatusName("已发货"); | |
| 451 | - } else { | |
| 452 | - QueryPurchaseOrderInfoVo vo4 = new QueryPurchaseOrderInfoVo(); | |
| 453 | - vo4.setContractId(id); | |
| 454 | - vo4.setStatus("SHIPPED"); | |
| 455 | - vo4.setType("PRODUCTION"); | |
| 456 | - List<PurchaseOrderInfo> query4 = purchaseOrderInfoService.query(vo4); | |
| 457 | - if (CollectionUtils.isNotEmpty(query4)) { | |
| 458 | - result.setShippingStatusName("已发货"); | |
| 459 | - } else { | |
| 460 | - QueryPurchaseOrderInfoVo vo5 = new QueryPurchaseOrderInfoVo(); | |
| 461 | - vo5.setContractId(id); | |
| 462 | - vo5.setStatus("DELIVERED"); | |
| 463 | - vo5.setType("PRODUCTION"); | |
| 464 | - List<PurchaseOrderInfo> query5 = purchaseOrderInfoService.query(vo5); | |
| 465 | - if (CollectionUtils.isNotEmpty(query5)) { | |
| 466 | - result.setShippingStatusName("已签收"); | |
| 467 | - } | |
| 468 | - } | |
| 469 | - } | |
| 470 | - } | |
| 410 | + String shippingStatusName = Stream.of( | |
| 411 | + new Object[]{"AUDIT", null, "审批中"}, | |
| 412 | + new Object[]{null, "ISSUED", "生产中"}, | |
| 413 | + new Object[]{null, "WAIT", "生产中"}, | |
| 414 | + new Object[]{null, "TRANSIT", "已发货"}, | |
| 415 | + new Object[]{null, "SHIPPED", "已发货"}, | |
| 416 | + new Object[]{null, "DELIVERED", "已签收"}, | |
| 417 | + new Object[]{null, "CANCEL", "已取消"} | |
| 418 | + ) | |
| 419 | + .filter(check -> { | |
| 420 | + QueryPurchaseOrderInfoVo queryVo = new QueryPurchaseOrderInfoVo(); | |
| 421 | + queryVo.setContractId(id); | |
| 422 | + queryVo.setType("PRODUCTION"); | |
| 423 | + if (check[0] != null) queryVo.setExamineStatus((String) check[0]); | |
| 424 | + if (check[1] != null) queryVo.setStatus((String) check[1]); | |
| 425 | + | |
| 426 | + List<PurchaseOrderInfo> query = purchaseOrderInfoService.query(queryVo); | |
| 427 | + return CollectionUtils.isNotEmpty(query); | |
| 428 | + }) | |
| 429 | + .map(check -> (String) check[2]) | |
| 430 | + .findFirst() | |
| 431 | + .orElse(null); | |
| 432 | + | |
| 433 | + if (shippingStatusName != null) { | |
| 434 | + result.setShippingStatusName(shippingStatusName); | |
| 471 | 435 | } |
| 472 | 436 | } |
| 473 | 437 | ... | ... |