From a0106efcb4154fbdc04dd64d1e408ae9e8c35f34 Mon Sep 17 00:00:00 2001 From: starrysky <838252223@qq.com> Date: Sat, 31 Aug 2019 11:54:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E8=B4=A7=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SupplierInfoServiceImpl.java | 2 +- .../wms/invoice/rest/InvoiceController.java | 16 +++++++++---- .../service/impl/InvoiceServiceImpl.java | 14 +++++++++++ .../service/impl/ProductCountServiceImpl.java | 23 +++++++++++++++++++ 4 files changed, 49 insertions(+), 6 deletions(-) diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/SupplierInfoServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/SupplierInfoServiceImpl.java index f0e286fc..781c4c18 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/SupplierInfoServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/SupplierInfoServiceImpl.java @@ -65,7 +65,7 @@ public class SupplierInfoServiceImpl implements SupplierInfoService { private SupplierCategoryRepository supplierCategoryRepository; @Override - public Object queryAll(SupplierInfoQueryCriteria criteria, Pageable pageable){ + public Object queryAll(SupplierInfoQueryCriteria criteria, Pageable pageable){ Specification specification = new Specification() { @Override public Predicate toPredicate(Root root, CriteriaQuery criteriaQuery, CriteriaBuilder criteriaBuilder) { diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/rest/InvoiceController.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/rest/InvoiceController.java index 1c9b1ccb..bb5a1454 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/rest/InvoiceController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/rest/InvoiceController.java @@ -22,7 +22,7 @@ import java.time.format.DateTimeFormatter; * @author jie * @date 2019-08-27 */ -@Api(tags = "SInvoice管理") +@Api(tags = "发货单管理") @RestController @RequestMapping("api") public class InvoiceController { @@ -32,18 +32,18 @@ public class InvoiceController { @Log("分页查询销售发货单") @ApiOperation(value = "分页查询销售发货单") - @GetMapping(value = "/querySaleInvoicePage") + @GetMapping(value = "/queryInvoicePage") @PreAuthorize("hasAnyRole('ADMIN','SINVOICE_ALL','SINVOICE_SELECT')") - public ResponseEntity querySaleInvoicePage(InvoiceQueryCriteria criteria, Pageable pageable){ + public ResponseEntity queryInvoicePage(InvoiceQueryCriteria criteria, Pageable pageable){ return new ResponseEntity(invoiceService.queryAll(criteria,pageable),HttpStatus.OK); } @Log("查询销售发货单列表") @ApiOperation(value = "查询销售发货单列表") - @GetMapping(value = "/querySaleInvoiceList") + @GetMapping(value = "/queryInvoiceList") @PreAuthorize("hasAnyRole('ADMIN','SINVOICE_ALL','SINVOICE_SELECT')") - public ResponseEntity querySaleInvoiceList(InvoiceQueryCriteria criteria){ + public ResponseEntity queryInvoiceList(InvoiceQueryCriteria criteria){ return new ResponseEntity(invoiceService.queryAll(criteria),HttpStatus.OK); } @@ -80,4 +80,10 @@ public class InvoiceController { String supplierCode = "INVOICE"+ LocalDateTime.now().format(fmt); return new ResponseEntity(supplierCode,HttpStatus.OK); } + + @Log("查看发货单详情") + @GetMapping(value = "/invoice/{id}") + public ResponseEntity getInvoiceInfo(@PathVariable Long id){ + return new ResponseEntity(invoiceService.findById(id), HttpStatus.OK); + } } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java index cda3119e..a973136f 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java @@ -2,7 +2,9 @@ package me.zhengjie.modules.wms.invoice.service.impl; import me.zhengjie.exception.BadRequestException; import me.zhengjie.modules.wms.bd.domain.CustomerInfo; +import me.zhengjie.modules.wms.bd.domain.ProductInfo; import me.zhengjie.modules.wms.bd.repository.CustomerInfoRepository; +import me.zhengjie.modules.wms.bd.repository.ProductInfoRepository; import me.zhengjie.modules.wms.customerOrder.domain.CustomerOrder; import me.zhengjie.modules.wms.customerOrder.domain.CustomerOrderProduct; import me.zhengjie.modules.wms.customerOrder.service.dto.CustomerOrderProductDTO; @@ -63,6 +65,9 @@ public class InvoiceServiceImpl implements InvoiceService { @Autowired private InvoiceProductRepository invoiceProductRepository; + @Autowired + private ProductInfoRepository productInfoRepository; + @Override public Object queryAll(InvoiceQueryCriteria criteria, Pageable pageable){ Page page = invoiceRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); @@ -136,6 +141,15 @@ public class InvoiceServiceImpl implements InvoiceService { for(InvoiceProduct invoiceProduct : invoiceProductRequestList){ invoiceProduct.setInvoiceId(invoice.getId()); + String productCode = invoiceProduct.getProductCode(); + if(StringUtils.isEmpty(productCode)){ + throw new BadRequestException("产品编号不能为空!"); + } + ProductInfo productInfo = productInfoRepository.findByProductCode(productCode); + if(null == productInfo){ + throw new BadRequestException("产品编号" + productInfo.getProductCode() + "对应的产品不存在!"); + } + invoiceProduct.setProductId(productInfo.getId()); invoiceProductRepository.save(invoiceProduct); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/sr/productCount/service/impl/ProductCountServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/sr/productCount/service/impl/ProductCountServiceImpl.java index f91420d3..ddc21733 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/sr/productCount/service/impl/ProductCountServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/sr/productCount/service/impl/ProductCountServiceImpl.java @@ -1,5 +1,9 @@ package me.zhengjie.modules.wms.sr.productCount.service.impl; +import me.zhengjie.exception.BadRequestException; +import me.zhengjie.modules.wms.bd.domain.ProductInfo; +import me.zhengjie.modules.wms.bd.repository.ProductInfoRepository; +import me.zhengjie.modules.wms.bd.service.mapper.ProductInfoMapper; import me.zhengjie.modules.wms.sr.productCount.domain.ProductCount; import me.zhengjie.utils.ValidationUtil; import me.zhengjie.modules.wms.sr.productCount.repository.ProductCountRepository; @@ -31,6 +35,12 @@ public class ProductCountServiceImpl implements ProductCountService { @Autowired private ProductCountMapper productCountMapper; + @Autowired + private ProductInfoMapper productInfoMapper; + + @Autowired + private ProductInfoRepository productInfoRepository; + @Override public Object queryAll(ProductCountQueryCriteria criteria, Pageable pageable){ Page page = productCountRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); @@ -52,6 +62,19 @@ public class ProductCountServiceImpl implements ProductCountService { @Override @Transactional(rollbackFor = Exception.class) public ProductCountDTO create(ProductCount resources) { + Long productId = resources.getProductId(); + if(null == productId){ + throw new BadRequestException("产品主键不能为空!"); + } + Optional productInfoOptional = productInfoRepository.findById(productId); + if(null == productInfoOptional){ + throw new BadRequestException("产品不存在 !"); + } + ProductInfo productInfo = productInfoOptional.get(); + if(null == productInfo){ + throw new BadRequestException("产品不存在 !"); + } + resources.setProductName(productInfo.getName()); return productCountMapper.toDto(productCountRepository.save(resources)); }