package org.jeecg.modules.eam.service.impl; import java.util.Arrays; import java.util.List; import org.apache.commons.lang.StringUtils; import org.jeecg.common.constant.CommonConstant; import org.jeecg.modules.eam.entity.Area; import org.jeecg.modules.eam.mapper.AreaMapper; import org.jeecg.modules.eam.service.IAreaService; import org.jeecg.modules.eam.service.IProductionLineService; import org.jeecg.modules.eam.service.ISiteService; 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 com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** * * @ClassName: AreaServiceImpl * @Description: 车间信息业务接口实现 * @author Wang Mingchao * @date 2020-10-20 09:29:03 */ @Service public class AreaServiceImpl extends ServiceImpl implements IAreaService { @Autowired @Lazy private ISiteService siteService; @Autowired @Lazy private IProductionLineService productionLineService; @Override public List list() { return super.lambdaQuery().eq(Area::getStatus, CommonConstant.STATUS_1).orderByAsc(Area::getNum).list(); } @Override @Transactional(rollbackFor = {Exception.class}) public boolean removeBySiteId(String siteId) { if(StringUtils.isBlank(siteId)) return false; LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(); lambdaQueryWrapper.eq(Area::getSiteId, siteId); return super.remove(lambdaQueryWrapper); } @Override @Transactional(rollbackFor = {Exception.class}) public boolean removeBySiteIds(String[] siteIds) { if(siteIds == null || siteIds.length < 1) return false; LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery(); lambdaQueryWrapper.in(Area::getSiteId, Arrays.asList(siteIds)); return super.remove(lambdaQueryWrapper); } @Override @Transactional(rollbackFor = {Exception.class}) public boolean activeBySiteId(String siteId, String status) { if(StringUtils.isBlank(siteId) || StringUtils.isBlank(status)) return false; LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(); updateWrapper.set(Area::getStatus, status).eq(Area::getSiteId, siteId); return super.update(updateWrapper); } }