basic stall
This commit is contained in:
parent
c71d676532
commit
c8964c9f73
|
|
@ -18,6 +18,8 @@ public interface BasicStallMapper {
|
|||
*/
|
||||
public BasicStall selectBasicStallByStallId(Long stallId);
|
||||
|
||||
public BasicStall selectBasicStallByStallName(BasicStall allocStall);
|
||||
|
||||
public int selectBasicStallCountByCanteenIds(Long[] canteenIds);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package com.bonus.canteen.core.basic.mapper;
|
|||
|
||||
import java.util.List;
|
||||
import com.bonus.canteen.core.basic.domain.BasicStallMealtime;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 档口餐次配置Mapper接口
|
||||
|
|
@ -34,6 +35,8 @@ public interface BasicStallMealtimeMapper {
|
|||
*/
|
||||
public int insertBasicStallMealtime(BasicStallMealtime basicStallMealtime);
|
||||
|
||||
public int batchInsertBasicStallMealtime(@Param("list") List<BasicStallMealtime> allocStallMealtimes);
|
||||
|
||||
/**
|
||||
* 修改档口餐次配置
|
||||
*
|
||||
|
|
@ -57,4 +60,6 @@ public interface BasicStallMealtimeMapper {
|
|||
* @return 结果
|
||||
*/
|
||||
public int deleteBasicStallMealtimeByIds(Long[] ids);
|
||||
|
||||
public int deleteBasicStallMealtimeByStallId(Long stallId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,25 @@
|
|||
package com.bonus.canteen.core.basic.service.impl;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.bonus.canteen.core.basic.domain.BasicStallMealtime;
|
||||
import com.bonus.canteen.core.basic.mapper.BasicStallMealtimeMapper;
|
||||
import com.bonus.canteen.core.cook.domain.CookRecipe;
|
||||
import com.bonus.canteen.core.cook.mapper.CookRecipeMapper;
|
||||
import com.bonus.canteen.core.device.domain.DeviceBind;
|
||||
import com.bonus.canteen.core.device.mapper.DeviceBindMapper;
|
||||
import com.bonus.canteen.core.utils.BnsConstants;
|
||||
import com.bonus.common.core.exception.ServiceException;
|
||||
import com.bonus.common.core.utils.DateUtils;
|
||||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.bonus.canteen.core.basic.mapper.BasicStallMapper;
|
||||
import com.bonus.canteen.core.basic.domain.BasicStall;
|
||||
import com.bonus.canteen.core.basic.service.IBasicStallService;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
/**
|
||||
* 档口信息Service业务层处理
|
||||
|
|
@ -24,6 +33,10 @@ public class BasicStallServiceImpl implements IBasicStallService {
|
|||
private BasicStallMapper basicStallMapper;
|
||||
@Autowired
|
||||
private BasicStallMealtimeMapper basicStallMealtimeMapper;
|
||||
@Autowired
|
||||
private DeviceBindMapper deviceBindMapper;
|
||||
@Autowired
|
||||
CookRecipeMapper cookRecipeMapper;
|
||||
|
||||
/**
|
||||
* 查询档口信息
|
||||
|
|
@ -61,8 +74,21 @@ public class BasicStallServiceImpl implements IBasicStallService {
|
|||
@Override
|
||||
public int insertBasicStall(BasicStall basicStall) {
|
||||
basicStall.setCreateTime(DateUtils.getNowDate());
|
||||
basicStall.setCreateBy(SecurityUtils.getUsername());
|
||||
basicStall.setIfReserve(BnsConstants.COMMON_YES); //默认开启预订餐
|
||||
try {
|
||||
return basicStallMapper.insertBasicStall(basicStall);
|
||||
BasicStall checkResult = basicStallMapper.selectBasicStallByStallName(basicStall);
|
||||
if (Objects.nonNull(checkResult)) {
|
||||
throw new ServiceException("该食堂档口名称已存在");
|
||||
}
|
||||
int stallCount = basicStallMapper.insertBasicStall(basicStall);
|
||||
if (stallCount > 0 && !CollectionUtils.isEmpty(basicStall.getBasicStallMealtimeList())) {
|
||||
basicStallMealtimeMapper.deleteBasicStallMealtimeByStallId(basicStall.getStallId());
|
||||
List<BasicStallMealtime> mealtimes = basicStall.getBasicStallMealtimeList();
|
||||
mealtimes.stream().forEach(o -> o.setStallId(basicStall.getStallId()));
|
||||
basicStallMealtimeMapper.batchInsertBasicStallMealtime(mealtimes);
|
||||
}
|
||||
return stallCount;
|
||||
} catch (Exception e) {
|
||||
throw new ServiceException(e.getMessage());
|
||||
}
|
||||
|
|
@ -77,8 +103,21 @@ public class BasicStallServiceImpl implements IBasicStallService {
|
|||
@Override
|
||||
public int updateBasicStall(BasicStall basicStall) {
|
||||
basicStall.setUpdateTime(DateUtils.getNowDate());
|
||||
basicStall.setUpdateBy(SecurityUtils.getUsername());
|
||||
try {
|
||||
return basicStallMapper.updateBasicStall(basicStall);
|
||||
List<BasicStall> allStallList = basicStallMapper.selectBasicStallList(new BasicStall());
|
||||
List<String> otherStallNameList = allStallList.stream().filter(item -> !item.getStallId().equals(basicStall.getStallId()))
|
||||
.filter(item -> item.getCanteenId().equals(basicStall.getCanteenId()))
|
||||
.map(BasicStall::getStallName).collect(Collectors.toList());
|
||||
if (otherStallNameList.contains(basicStall.getStallName())) {
|
||||
throw new ServiceException("该食堂档口名称已存在");
|
||||
}
|
||||
int stallCount = basicStallMapper.updateBasicStall(basicStall);
|
||||
if (stallCount > 0 && !CollectionUtils.isEmpty(basicStall.getBasicStallMealtimeList())) {
|
||||
basicStallMealtimeMapper.deleteBasicStallMealtimeByStallId(basicStall.getStallId());
|
||||
basicStallMealtimeMapper.batchInsertBasicStallMealtime(basicStall.getBasicStallMealtimeList());
|
||||
}
|
||||
return stallCount;
|
||||
} catch (Exception e) {
|
||||
throw new ServiceException(e.getMessage());
|
||||
}
|
||||
|
|
@ -92,7 +131,27 @@ public class BasicStallServiceImpl implements IBasicStallService {
|
|||
*/
|
||||
@Override
|
||||
public int deleteBasicStallByStallIds(Long[] stallIds) {
|
||||
return basicStallMapper.deleteBasicStallByStallIds(stallIds);
|
||||
int count = 0;
|
||||
for (int i = 0; i < stallIds.length; i++) {
|
||||
Long stallId = stallIds[i];
|
||||
//判断档口是否含有设备
|
||||
DeviceBind deviceBind = new DeviceBind();
|
||||
deviceBind.setStallId(stallId);
|
||||
List<DeviceBind> deviceBindList = deviceBindMapper.selectDeviceBindList(deviceBind);
|
||||
if (!CollectionUtils.isEmpty(deviceBindList) && deviceBindList.size() > 0) {
|
||||
throw new ServiceException("此档口已绑定设备,不能删除");
|
||||
}
|
||||
//判断档口是否含有菜谱
|
||||
CookRecipe cookRecipe = new CookRecipe();
|
||||
cookRecipe.setStallId(stallId);
|
||||
List<CookRecipe> cookRecipeList = cookRecipeMapper.selectCookRecipeList(cookRecipe);
|
||||
if (!CollectionUtils.isEmpty(cookRecipeList) && cookRecipeList.size() > 0) {
|
||||
throw new ServiceException("此档口含有菜谱,不能删除");
|
||||
}
|
||||
basicStallMealtimeMapper.deleteBasicStallMealtimeByStallId(stallId);
|
||||
count += basicStallMapper.deleteBasicStallByStallId(stallId);
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -103,6 +162,7 @@ public class BasicStallServiceImpl implements IBasicStallService {
|
|||
*/
|
||||
@Override
|
||||
public int deleteBasicStallByStallId(Long stallId) {
|
||||
basicStallMealtimeMapper.deleteBasicStallMealtimeByStallId(stallId);
|
||||
return basicStallMapper.deleteBasicStallByStallId(stallId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -66,6 +66,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
where bs.stall_id = #{stallId}
|
||||
</select>
|
||||
|
||||
<select id="selectBasicStallByStallName" parameterType="com.bonus.canteen.core.basic.domain.BasicStall" resultMap="BasicStallResult">
|
||||
<include refid="selectBasicStallVo"/>
|
||||
where bs.stall_name = #{stallName} and bc.canteen_id = #{canteenId}
|
||||
</select>
|
||||
|
||||
<select id="selectBasicStallCountByCanteenIds" resultType="Integer">
|
||||
select count(1)
|
||||
from alloc_stall
|
||||
|
|
|
|||
|
|
@ -37,7 +37,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<include refid="selectBasicStallMealtimeVo"/>
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
|
||||
<insert id="batchInsertBasicStallMealtime" parameterType="com.bonus.canteen.core.basic.domain.BasicStallMealtime" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into basic_stall_mealtime(stall_id, mealtime_type, mealtime_name, start_time, end_time)
|
||||
values
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
(
|
||||
#{item.stallId},
|
||||
#{item.mealtimeType},
|
||||
#{item.mealtimeName},
|
||||
#{item.startTime},
|
||||
#{item.endTime}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="insertBasicStallMealtime" parameterType="com.bonus.canteen.core.basic.domain.BasicStallMealtime" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into basic_stall_mealtime
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
|
@ -93,4 +107,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<delete id="deleteBasicStallMealtimeByStallId" parameterType="Long">
|
||||
delete from basic_stall_mealtime where stall_id = #{stallId}
|
||||
</delete>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue