gunshi-project-ss/src/main/java/com/gunshi/project/xyt/service/BzDictRelService.java

58 lines
1.8 KiB
Java

package com.gunshi.project.xyt.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gunshi.project.xyt.mapper.BzDictRelMapper;
import com.gunshi.project.xyt.model.BzDictRel;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
* 描述: 业务关联字典
* author: xusan
* date: 2024-08-28 10:05:21
*/
@Service
@Slf4j
@Transactional(rollbackFor = Exception.class)
public class BzDictRelService extends ServiceImpl<BzDictRelMapper, BzDictRel>
{
public void saveRel(List<BzDictRel> result, Long id,String groupId) {
if (CollectionUtils.isNotEmpty(result)) {
result.stream().forEach(rel->{
rel.setId(IdWorker.getId());
if(id != null){
rel.setBusinessId(id);
}
rel.setGroupId(groupId);
});
this.saveBatch(result);
}
}
public void deleteRel(Long id) {
LambdaQueryWrapper<BzDictRel> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.eq(BzDictRel::getBusinessId,id);
this.remove(queryWrapper);
}
public void updateRel(List<BzDictRel> result, Long id,String groupId) {
deleteRel(id);
saveRel(result,id,groupId);
}
public void removeByBzIds(List<Long> detailIds) {
LambdaQueryWrapper<BzDictRel> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.in(BzDictRel::getBusinessId,detailIds);
this.remove(queryWrapper);
}
}