diff --git a/src/main/java/com/ycwl/basic/pricing/controller/VoucherManagementController.java b/src/main/java/com/ycwl/basic/pricing/controller/VoucherManagementController.java index dda20ab..573870e 100644 --- a/src/main/java/com/ycwl/basic/pricing/controller/VoucherManagementController.java +++ b/src/main/java/com/ycwl/basic/pricing/controller/VoucherManagementController.java @@ -12,17 +12,21 @@ import com.ycwl.basic.pricing.service.VoucherBatchService; import com.ycwl.basic.pricing.service.VoucherCodeService; import com.ycwl.basic.utils.ApiResponse; import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping("/api/pricing/voucher") -@RequiredArgsConstructor public class VoucherManagementController { - - private final VoucherBatchService voucherBatchService; - private final VoucherCodeService voucherCodeService; + @Autowired + @Lazy + private VoucherBatchService voucherBatchService; + @Autowired + @Lazy + private VoucherCodeService voucherCodeService; @PostMapping("/batch/create") public ApiResponse createBatch(@RequestBody VoucherBatchCreateReq req) { diff --git a/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherBatchServiceImpl.java b/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherBatchServiceImpl.java index 8f1d2de..e430511 100644 --- a/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherBatchServiceImpl.java +++ b/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherBatchServiceImpl.java @@ -15,6 +15,8 @@ import com.ycwl.basic.pricing.service.VoucherBatchService; import com.ycwl.basic.pricing.service.VoucherCodeService; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; @@ -22,11 +24,12 @@ import org.springframework.util.StringUtils; import java.util.Date; @Service -@RequiredArgsConstructor public class VoucherBatchServiceImpl implements VoucherBatchService { - - private final PriceVoucherBatchConfigMapper voucherBatchMapper; - private final VoucherCodeService voucherCodeService; + @Autowired + private PriceVoucherBatchConfigMapper voucherBatchMapper; + @Autowired + @Lazy + private VoucherCodeService voucherCodeService; @Override @Transactional diff --git a/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherCodeServiceImpl.java b/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherCodeServiceImpl.java index cdb2c54..1ca22e2 100644 --- a/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherCodeServiceImpl.java +++ b/src/main/java/com/ycwl/basic/pricing/service/impl/VoucherCodeServiceImpl.java @@ -16,6 +16,8 @@ import com.ycwl.basic.pricing.service.VoucherBatchService; import com.ycwl.basic.pricing.service.VoucherCodeService; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; @@ -26,12 +28,15 @@ import java.util.List; import java.util.UUID; @Service -@RequiredArgsConstructor public class VoucherCodeServiceImpl implements VoucherCodeService { - - private final PriceVoucherCodeMapper voucherCodeMapper; - private final PriceVoucherBatchConfigMapper voucherBatchMapper; - private final VoucherBatchService voucherBatchService; + + @Autowired + private PriceVoucherCodeMapper voucherCodeMapper; + @Autowired + private PriceVoucherBatchConfigMapper voucherBatchMapper; + @Autowired + @Lazy + private VoucherBatchService voucherBatchService; @Override public void generateVoucherCodes(Long batchId, Long scenicId, Integer count) {