From 13561222653ae076df58f0b6d86deb2c5354c8d7 Mon Sep 17 00:00:00 2001 From: lihongjie0209 Date: Sat, 24 Feb 2024 13:21:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BB=93=E5=BA=93=E4=BE=9B?= =?UTF-8?q?=E5=BA=94=E5=95=86=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WarehouseSupplierController.java | 54 ++++++++++++++ .../dto/CreateWarehouseSupplierDto.java | 16 +++++ .../dto/UpdateWarehouseSupplierDto.java | 15 ++++ .../dto/WarehouseSupplierDto.java | 16 +++++ .../entity/WarehouseSupplierEntity.java | 20 ++++++ .../mapper/WarehouseSupplierMapper.java | 23 ++++++ .../WarehouseSupplierRepository.java | 9 +++ .../service/WarehouseSupplierService.java | 71 +++++++++++++++++++ 8 files changed, 224 insertions(+) create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/controller/WarehouseSupplierController.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/CreateWarehouseSupplierDto.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/UpdateWarehouseSupplierDto.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/WarehouseSupplierDto.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/entity/WarehouseSupplierEntity.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/mapper/WarehouseSupplierMapper.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/repository/WarehouseSupplierRepository.java create mode 100644 src/main/java/cn/lihongjie/coal/warehouseSupplier/service/WarehouseSupplierService.java diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/controller/WarehouseSupplierController.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/controller/WarehouseSupplierController.java new file mode 100644 index 00000000..4d6aea2e --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/controller/WarehouseSupplierController.java @@ -0,0 +1,54 @@ +package cn.lihongjie.coal.warehouseSupplier.controller; + +import cn.lihongjie.coal.annotation.OrgScope; +import cn.lihongjie.coal.annotation.SysLog; +import cn.lihongjie.coal.base.dto.CommonQuery; +import cn.lihongjie.coal.base.dto.IdRequest; +import cn.lihongjie.coal.warehouseSupplier.dto.CreateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.UpdateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.WarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.service.WarehouseSupplierService; + +import lombok.extern.slf4j.Slf4j; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +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; + +@RestController +@RequestMapping("/warehouseSupplier") +@SysLog(module = "仓库供应商") +@Slf4j +@OrgScope +public class WarehouseSupplierController { + @Autowired private WarehouseSupplierService service; + + @PostMapping("/create") + public WarehouseSupplierDto create(@RequestBody CreateWarehouseSupplierDto request) { + return this.service.create(request); + } + + @PostMapping("/update") + public WarehouseSupplierDto update(@RequestBody UpdateWarehouseSupplierDto request) { + return this.service.update(request); + } + + @PostMapping("/delete") + public Object delete(@RequestBody IdRequest request) { + this.service.delete(request); + return true; + } + + @PostMapping("/getById") + public WarehouseSupplierDto getById(@RequestBody IdRequest request) { + return this.service.getById(request.getId()); + } + + @PostMapping("/list") + public Page list(@RequestBody CommonQuery request) { + return this.service.list(request); + } +} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/CreateWarehouseSupplierDto.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/CreateWarehouseSupplierDto.java new file mode 100644 index 00000000..39648443 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/CreateWarehouseSupplierDto.java @@ -0,0 +1,16 @@ +package cn.lihongjie.coal.warehouseSupplier.dto; + +import cn.lihongjie.coal.base.dto.OrgCommonDto; + +import lombok.Data; + +@Data +public class CreateWarehouseSupplierDto extends OrgCommonDto { + private String address; + + + private String contact; + + private String contactPhone; + +} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/UpdateWarehouseSupplierDto.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/UpdateWarehouseSupplierDto.java new file mode 100644 index 00000000..436e6125 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/UpdateWarehouseSupplierDto.java @@ -0,0 +1,15 @@ +package cn.lihongjie.coal.warehouseSupplier.dto; + +import cn.lihongjie.coal.base.dto.OrgCommonDto; + +import lombok.Data; + +@Data +public class UpdateWarehouseSupplierDto extends OrgCommonDto { + private String address; + + + private String contact; + + private String contactPhone; +} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/WarehouseSupplierDto.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/WarehouseSupplierDto.java new file mode 100644 index 00000000..4a18241e --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/dto/WarehouseSupplierDto.java @@ -0,0 +1,16 @@ +package cn.lihongjie.coal.warehouseSupplier.dto; + +import cn.lihongjie.coal.base.dto.OrgCommonDto; + +import lombok.Data; + +@Data +public class WarehouseSupplierDto extends OrgCommonDto { + + private String address; + + + private String contact; + + private String contactPhone; +} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/entity/WarehouseSupplierEntity.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/entity/WarehouseSupplierEntity.java new file mode 100644 index 00000000..3f032dfa --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/entity/WarehouseSupplierEntity.java @@ -0,0 +1,20 @@ +package cn.lihongjie.coal.warehouseSupplier.entity; + +import cn.lihongjie.coal.base.entity.OrgCommonEntity; + +import jakarta.persistence.Entity; + +import lombok.Data; + +@Data +@Entity +public class WarehouseSupplierEntity extends OrgCommonEntity { + + + private String address; + + + private String contact; + + private String contactPhone; +} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/mapper/WarehouseSupplierMapper.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/mapper/WarehouseSupplierMapper.java new file mode 100644 index 00000000..a6f0f44c --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/mapper/WarehouseSupplierMapper.java @@ -0,0 +1,23 @@ +package cn.lihongjie.coal.warehouseSupplier.mapper; + +import cn.lihongjie.coal.base.mapper.BaseMapper; +import cn.lihongjie.coal.base.mapper.CommonEntityMapper; +import cn.lihongjie.coal.base.mapper.CommonMapper; +import cn.lihongjie.coal.warehouseSupplier.dto.CreateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.UpdateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.WarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.entity.WarehouseSupplierEntity; + +import org.mapstruct.Mapper; +import org.mapstruct.control.DeepClone; + +@Mapper( + componentModel = org.mapstruct.MappingConstants.ComponentModel.SPRING, + uses = {CommonMapper.class, CommonEntityMapper.class}, + mappingControl = DeepClone.class) +public interface WarehouseSupplierMapper + extends BaseMapper< + WarehouseSupplierEntity, + WarehouseSupplierDto, + CreateWarehouseSupplierDto, + UpdateWarehouseSupplierDto> {} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/repository/WarehouseSupplierRepository.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/repository/WarehouseSupplierRepository.java new file mode 100644 index 00000000..4efeeb14 --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/repository/WarehouseSupplierRepository.java @@ -0,0 +1,9 @@ +package cn.lihongjie.coal.warehouseSupplier.repository; + +import cn.lihongjie.coal.base.dao.BaseRepository; +import cn.lihongjie.coal.warehouseSupplier.entity.WarehouseSupplierEntity; + +import org.springframework.stereotype.Repository; + +@Repository +public interface WarehouseSupplierRepository extends BaseRepository {} diff --git a/src/main/java/cn/lihongjie/coal/warehouseSupplier/service/WarehouseSupplierService.java b/src/main/java/cn/lihongjie/coal/warehouseSupplier/service/WarehouseSupplierService.java new file mode 100644 index 00000000..32413a9c --- /dev/null +++ b/src/main/java/cn/lihongjie/coal/warehouseSupplier/service/WarehouseSupplierService.java @@ -0,0 +1,71 @@ +package cn.lihongjie.coal.warehouseSupplier.service; + +import cn.lihongjie.coal.base.dto.CommonQuery; +import cn.lihongjie.coal.base.dto.IdRequest; +import cn.lihongjie.coal.base.service.BaseService; +import cn.lihongjie.coal.warehouseSupplier.dto.CreateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.UpdateWarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.dto.WarehouseSupplierDto; +import cn.lihongjie.coal.warehouseSupplier.entity.WarehouseSupplierEntity; +import cn.lihongjie.coal.warehouseSupplier.mapper.WarehouseSupplierMapper; +import cn.lihongjie.coal.warehouseSupplier.repository.WarehouseSupplierRepository; + +import lombok.extern.slf4j.Slf4j; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.convert.ConversionService; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Sort; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@Slf4j +@Transactional +public class WarehouseSupplierService + extends BaseService { + @Autowired private WarehouseSupplierRepository repository; + + @Autowired private WarehouseSupplierMapper mapper; + + @Autowired private ConversionService conversionService; + + public WarehouseSupplierDto create(CreateWarehouseSupplierDto request) { + WarehouseSupplierEntity entity = mapper.toEntity(request); + + this.repository.save(entity); + return getById(entity.getId()); + } + + public WarehouseSupplierDto update(UpdateWarehouseSupplierDto request) { + WarehouseSupplierEntity entity = this.repository.get(request.getId()); + this.mapper.updateEntity(entity, request); + + this.repository.save(entity); + + return getById(entity.getId()); + } + + public void delete(IdRequest request) { + this.repository.deleteAllById(request.getIds()); + } + + public WarehouseSupplierDto getById(String id) { + WarehouseSupplierEntity entity = repository.get(id); + + return mapper.toDto(entity); + } + + public Page list(CommonQuery query) { + Page page = + repository.findAll( + query.specification(conversionService), + PageRequest.of( + query.getPageNo(), + query.getPageSize(), + Sort.by(query.getOrders()))); + + return page.map(this.mapper::toDto); + } +}