食堂门店
This commit is contained in:
@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.system.api.dish;
|
||||
|
||||
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.system.api.dish.dto.DishExcelDto;
|
||||
import cn.iocoder.yudao.module.system.api.dish.dto.DishesRespDto;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dishes.DishesDO;
|
||||
import cn.iocoder.yudao.module.system.service.dishes.DishesService;
|
||||
@ -38,4 +39,9 @@ public class DishesApiImpl implements DishesApi {
|
||||
List<DishesDO> dishesList = dishesService.getDishesList(ids);
|
||||
return BeanUtils.toBean(dishesList, DishesRespDto.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportDish(List<DishExcelDto> dishExcels,Long storeId) {
|
||||
dishesService.exportDish(dishExcels,storeId);
|
||||
}
|
||||
}
|
@ -1,6 +1,7 @@
|
||||
package cn.iocoder.yudao.module.system.service.dishes;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.system.api.dish.dto.DishExcelDto;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesRespVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesSaveReqVO;
|
||||
@ -70,4 +71,6 @@ public interface DishesService {
|
||||
List<DishesDO> getTodayDishes();
|
||||
|
||||
List<DishesDO> getTodayDishesNew();
|
||||
|
||||
void exportDish(List<DishExcelDto> dishExcels, Long storeId);
|
||||
}
|
@ -1,11 +1,14 @@
|
||||
package cn.iocoder.yudao.module.system.service.dishes;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.system.api.dish.dto.DishExcelDto;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesRespVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.dishes.vo.DishesSaveReqVO;
|
||||
@ -18,13 +21,16 @@ import cn.iocoder.yudao.module.system.controller.app.dishes.vo.AppUpdateVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dishes.DishesDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dishesnutrition.DishesNutritionDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dishesraw.DishesRawDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dishestype.DishesTypeDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.dishes.DishesMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.ErrorCodeConstants;
|
||||
import cn.iocoder.yudao.module.system.service.deviceinfo.DeviceInfoService;
|
||||
import cn.iocoder.yudao.module.system.service.dishesnutrition.DishesNutritionService;
|
||||
import cn.iocoder.yudao.module.system.service.dishesraw.DishesRawService;
|
||||
import cn.iocoder.yudao.module.system.service.dishestype.DishesTypeService;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.SneakyThrows;
|
||||
import org.aspectj.weaver.ast.Var;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
@ -62,7 +68,8 @@ public class DishesServiceImpl implements DishesService {
|
||||
private DeviceInfoService deviceInfoService;
|
||||
@Resource
|
||||
private HttpServletRequest httpServletRequest;
|
||||
|
||||
@Resource
|
||||
private DishesTypeService dishesTypeService;
|
||||
|
||||
@Override
|
||||
@SneakyThrows
|
||||
@ -321,11 +328,51 @@ public class DishesServiceImpl implements DishesService {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public String getToday(){
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
return currentDate.format(formatter);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exportDish(List<DishExcelDto> dishExcels, Long storeId) {
|
||||
|
||||
for (DishExcelDto vo:dishExcels){
|
||||
List<DishesDO> dishesDOS = dishesMapper.selectList(Wrappers.<DishesDO>lambdaQuery()
|
||||
.eq(DishesDO::getCarteenId, storeId)
|
||||
.eq(DishesDO::getDishesName, vo.getName()));
|
||||
|
||||
if(CollectionUtil.isNotEmpty(dishesDOS)){
|
||||
continue;
|
||||
}
|
||||
// 插入
|
||||
DishesDO dishes = new DishesDO();
|
||||
dishes.setDishesName(vo.getName());
|
||||
dishes.setDishesSumPrice(vo.getMoney());
|
||||
dishes.setDeleted(Boolean.FALSE);
|
||||
dishes.setCarteenId(storeId);
|
||||
dishes.setDishesNumber(new BigDecimal("50"));
|
||||
DishesTypeDO byName = dishesTypeService.getByName(vo.getType(), storeId);
|
||||
dishes.setDishecType(ObjectUtil.isNotEmpty(byName)?byName.getId().toString():null);
|
||||
|
||||
LocalDateTime today = LocalDateTime.now();
|
||||
int hour = today.getHour();
|
||||
String time = dishesMapper.getTime(hour);
|
||||
String dayOfWeekInChinese = getToday();
|
||||
dishes.setWeekTime(dayOfWeekInChinese);
|
||||
dishes.setTimeSlot(time);
|
||||
//计算每g多少钱
|
||||
BigDecimal dishesSumPrice = vo.getMoney();
|
||||
BigDecimal dishesNumber = new BigDecimal("50");
|
||||
BigDecimal div = NumberUtil.div(dishesSumPrice, dishesNumber, 2);
|
||||
//避免计算出每克价格约 为0
|
||||
if (div.floatValue() <= 0.00f) {
|
||||
dishes.setDishesBasePrice(new BigDecimal("0.01"));
|
||||
} else {
|
||||
dishes.setDishesBasePrice(div);
|
||||
}
|
||||
dishesMapper.insert(dishes);
|
||||
}
|
||||
}
|
||||
}
|
@ -67,5 +67,5 @@ public interface DishesTypeService {
|
||||
|
||||
List<DishesTypeDO> getList();
|
||||
|
||||
|
||||
DishesTypeDO getByName(String name,Long carteenId);
|
||||
}
|
@ -44,8 +44,7 @@ public class DishesTypeServiceImpl implements DishesTypeService {
|
||||
|
||||
@Resource
|
||||
private DishesTypeMapper dishesTypeMapper;
|
||||
@Resource
|
||||
private DishesService dishesService;
|
||||
|
||||
@Override
|
||||
public Long createDishesType(DishesTypeSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
@ -166,4 +165,13 @@ public class DishesTypeServiceImpl implements DishesTypeService {
|
||||
public List<DishesTypeDO> getList() {
|
||||
return dishesTypeMapper.selectList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public DishesTypeDO getByName(String name,Long carteenId) {
|
||||
LambdaQueryWrapper<DishesTypeDO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(DishesTypeDO::getDishesTypeName,name);
|
||||
wrapper.eq(DishesTypeDO::getCarteenId,carteenId);
|
||||
List<DishesTypeDO> dishesTypeDOS = dishesTypeMapper.selectList(wrapper);
|
||||
return CollectionUtil.isNotEmpty(dishesTypeDOS)?dishesTypeDOS.get(0):null;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user