Showing
1 changed file
with
52 additions
and
88 deletions
| @@ -74,6 +74,7 @@ import java.util.*; | @@ -74,6 +74,7 @@ import java.util.*; | ||
| 74 | import java.util.List; | 74 | import java.util.List; |
| 75 | import java.util.function.Function; | 75 | import java.util.function.Function; |
| 76 | import java.util.stream.Collectors; | 76 | import java.util.stream.Collectors; |
| 77 | +import java.util.stream.Stream; | ||
| 77 | 78 | ||
| 78 | /** | 79 | /** |
| 79 | * 经销标准合同 Controller | 80 | * 经销标准合同 Controller |
| @@ -261,51 +262,32 @@ public class ContractDistributorStandardController extends DefaultBaseController | @@ -261,51 +262,32 @@ public class ContractDistributorStandardController extends DefaultBaseController | ||
| 261 | } | 262 | } |
| 262 | //合同状态(标准合同列表展示) | 263 | //合同状态(标准合同列表展示) |
| 263 | if (vo != null && "STANDARD".equals(vo.getStatus())) { | 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,49 +407,31 @@ public class ContractDistributorStandardController extends DefaultBaseController | ||
| 425 | } | 407 | } |
| 426 | //合同状态(标准合同列表展示) | 408 | //合同状态(标准合同列表展示) |
| 427 | if ("STANDARD".equals(data.getStatus())) { | 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 |