package com.whn.hellospring.service; import com.whn.hellospring.model.CoffeeDO; import com.whn.hellospring.repository.CoffeeRepository; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Example; import org.springframework.data.domain.ExampleMatcher; import org.springframework.stereotype.Service; import java.util.List; import java.util.Optional; import static org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers.exact; @Slf4j @Service public class CoffeeService { @Autowired private CoffeeRepository coffeeRepository; /** * 根据名称,寻找咖啡 */ public Optional findOneCoffee(String name){ ExampleMatcher matcher = ExampleMatcher.matching() .withMatcher("name",exact().ignoreCase()); Optional coffee = coffeeRepository.findOne( Example.of(CoffeeDO.builder().name(name).build(),matcher)); log.info("Coffee Found:{}",coffee); return coffee; } /** * 创建编辑一杯咖啡 */ public CoffeeDO updateCoffee(CoffeeDO coffeeDO){ CoffeeDO save = coffeeRepository.save(coffeeDO); return save; } /** * 根据id 删除一杯咖啡 */ public void deleteCoffee(Long id){ coffeeRepository.deleteById(id); } /** * 获取一个订单下咖啡列表 */ public List getCoffeeListWithOrderId(Long orderId){ List coffeeList = coffeeRepository.selectCoffeeListWithOrder(orderId); return coffeeList; } }