diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/repository/MeasureUnitRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/repository/MeasureUnitRepository.java index 741a4aad..c07edc27 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/repository/MeasureUnitRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/repository/MeasureUnitRepository.java @@ -9,4 +9,5 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; * @date 2019-07-26 */ public interface MeasureUnitRepository extends JpaRepository, JpaSpecificationExecutor { + } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/rest/MeasureUnitController.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/rest/MeasureUnitController.java index d318d1dd..6c86e7f2 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/rest/MeasureUnitController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/rest/MeasureUnitController.java @@ -2,16 +2,23 @@ package me.zhengjie.modules.wms.bd.rest; import me.zhengjie.aop.log.Log; import me.zhengjie.exception.BadRequestException; +import me.zhengjie.modules.system.service.dto.DictDTO; +import me.zhengjie.modules.system.service.dto.RoleSmallDTO; import me.zhengjie.modules.wms.bd.domain.MeasureUnit; import me.zhengjie.modules.wms.bd.service.MeasureUnitService; +import me.zhengjie.modules.wms.bd.service.dto.MeasureUnitDTO; +import me.zhengjie.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; + +import java.util.Collections; +import java.util.stream.Collectors; + /** * @author 黄星星 @@ -34,4 +41,23 @@ public class MeasureUnitController { } return new ResponseEntity(measureUnitService.create(resources), HttpStatus.CREATED); } + + @Log("查看计量单位详情") + @GetMapping(value = "/measureUnit/{id}") + public ResponseEntity getMessureUnits(@PathVariable Long id){ + return new ResponseEntity(measureUnitService.findById(id), HttpStatus.OK); + } + + @Log("删除计量单位") + @DeleteMapping(value = "/measureUnit/{id}") + public ResponseEntity delete(@PathVariable Long id){ + measureUnitService.delete(id); + return new ResponseEntity(HttpStatus.OK); + } + + @Log("查询计量单位") + @GetMapping(value = "/measureUnit") + public ResponseEntity getDicts(MeasureUnitDTO resources, Pageable pageable){ + return new ResponseEntity(measureUnitService.queryAll(resources,pageable),HttpStatus.OK); + } } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/MeasureUnitService.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/MeasureUnitService.java index 139ae4ad..f882677e 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/MeasureUnitService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/MeasureUnitService.java @@ -1,7 +1,9 @@ package me.zhengjie.modules.wms.bd.service; +import me.zhengjie.modules.system.service.dto.DictDTO; import me.zhengjie.modules.wms.bd.domain.MeasureUnit; import me.zhengjie.modules.wms.bd.service.dto.MeasureUnitDTO; +import org.springframework.data.domain.Pageable; /** * @author 黄星星 @@ -9,5 +11,11 @@ import me.zhengjie.modules.wms.bd.service.dto.MeasureUnitDTO; */ public interface MeasureUnitService { - public MeasureUnitDTO create(MeasureUnit resources); + MeasureUnitDTO create(MeasureUnit resources); + + MeasureUnitDTO findById(long id); + + void delete(Long id); + + Object queryAll(MeasureUnitDTO dict, Pageable pageable); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/dto/MeasureUnitQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/dto/MeasureUnitQueryCriteria.java new file mode 100644 index 00000000..031ecc28 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/dto/MeasureUnitQueryCriteria.java @@ -0,0 +1,24 @@ +package me.zhengjie.modules.wms.bd.service.dto; + +import lombok.Data; +import me.zhengjie.annotation.Query; + +import java.io.Serializable; +import java.util.Set; + +/** + * @author 黄星星 + * @date 2019-07-27 + */ +@Data +public class MeasureUnitQueryCriteria implements Serializable { + + @Query + private Long id; + + @Query(type = Query.Type.INNER_LIKE) + private String name; + + @Query + private Boolean status; +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/MeasureUnitServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/MeasureUnitServiceImpl.java index 5125827f..e073f913 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/MeasureUnitServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/bd/service/impl/MeasureUnitServiceImpl.java @@ -1,15 +1,23 @@ package me.zhengjie.modules.wms.bd.service.impl; +import me.zhengjie.modules.system.domain.Dict; import me.zhengjie.modules.wms.bd.domain.MeasureUnit; import me.zhengjie.modules.wms.bd.repository.MeasureUnitRepository; import me.zhengjie.modules.wms.bd.service.MeasureUnitService; import me.zhengjie.modules.wms.bd.service.dto.MeasureUnitDTO; import me.zhengjie.modules.wms.bd.service.mapper.MeasureUnitMapper; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import me.zhengjie.utils.ValidationUtil; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.util.Optional; + /** * @author 黄星星 * @date 2019-07-27 @@ -30,4 +38,24 @@ public class MeasureUnitServiceImpl implements MeasureUnitService { return measureUnitMapper.toDto(measureUnitRepository.save(resources)); } + @Override + @Transactional(rollbackFor = Exception.class) + public MeasureUnitDTO findById(long id) { + Optional measureUnit = measureUnitRepository.findById(id); + ValidationUtil.isNull(measureUnit,"MeasureUnit","id",id); + return measureUnitMapper.toDto(measureUnit.get()); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(Long id) { + measureUnitRepository.deleteById(id); + } + + @Override + public Object queryAll(MeasureUnitDTO measureUnit, Pageable pageable) { + Page page = measureUnitRepository.findAll((root, query, cb) -> QueryHelp.getPredicate(root, measureUnit, cb), pageable); + return PageUtil.toPage(page.map(measureUnitMapper::toDto)); + } + }