package com.ruoyi.cwgl.service.impl;
|
|
import java.util.List;
|
|
import com.ruoyi.common.utils.DateUtils;
|
import javax.annotation.Resource;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.stereotype.Service;
|
import org.springframework.scheduling.annotation.Async;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import com.ruoyi.common.utils.PageUtils;
|
import com.ruoyi.common.constant.Constants;
|
import com.ruoyi.common.annotation.DataSource;
|
import com.ruoyi.common.enums.DataSourceType;
|
import com.ruoyi.common.core.service.BaseService;
|
|
import com.ruoyi.cwgl.mapper.ReceivableFeeManagementMapper;
|
import com.ruoyi.cwgl.domain.ReceivableFeeManagement;
|
import com.ruoyi.cwgl.service.IReceivableFeeDetailService;
|
import com.ruoyi.cwgl.service.IReceivableFeeManagementService;
|
import com.ruoyi.common.core.text.Convert;
|
|
/**
|
* 应收费用管理Service业务层处理
|
*
|
* @author ruoyi
|
* @date 2025-12-17
|
*/
|
@Service
|
@Transactional(rollbackFor = Exception.class)
|
public class ReceivableFeeManagementServiceImpl extends BaseService<ReceivableFeeManagementMapper, ReceivableFeeManagement> implements IReceivableFeeManagementService
|
{
|
protected final Logger logger = LoggerFactory.getLogger(getClass());
|
@Resource
|
private ReceivableFeeManagementMapper receivableFeeManagementMapper;
|
|
@Autowired
|
private IReceivableFeeDetailService receivableFeeDetailService;
|
|
|
/**
|
* 查询应收费用管理
|
*
|
* @param id 应收费用管理ID
|
* @return 应收费用管理
|
*/
|
@DataSource(DataSourceType.SLAVE)
|
@Override
|
public ReceivableFeeManagement selectReceivableFeeManagementById(Integer id)
|
{
|
return receivableFeeManagementMapper.selectReceivableFeeManagementById(id);
|
}
|
|
/**
|
* 查询应收费用管理 记录数
|
*
|
* @param receivableFeeManagement 应收费用管理
|
* @return 应收费用管理集合
|
*/
|
@DataSource(DataSourceType.SLAVE)
|
@Override
|
public int selectReceivableFeeManagementCount(ReceivableFeeManagement receivableFeeManagement)
|
{
|
return receivableFeeManagementMapper.selectReceivableFeeManagementCount(receivableFeeManagement);
|
}
|
|
/**
|
* 查询应收费用管理列表
|
*
|
* @param receivableFeeManagement 应收费用管理
|
* @return 应收费用管理
|
*/
|
@DataSource(DataSourceType.SLAVE)
|
@Override
|
public List<ReceivableFeeManagement> selectReceivableFeeManagementList(ReceivableFeeManagement receivableFeeManagement)
|
{
|
return receivableFeeManagementMapper.selectReceivableFeeManagementList(receivableFeeManagement);
|
}
|
|
/**
|
* 查询应收费用管理列表 异步 导出
|
*
|
* @param receivableFeeManagement 应收费用管理
|
* @param exportKey 导出功能的唯一标识
|
* @return 应收费用管理集合
|
*/
|
@DataSource(DataSourceType.SLAVE)
|
@Async
|
@Override
|
public void export(ReceivableFeeManagement receivableFeeManagement,String exportKey) {
|
|
super.export(ReceivableFeeManagement.class,exportKey,"receivableFeeManagementData",(pageNum)->{
|
PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE);
|
return selectReceivableFeeManagementList(receivableFeeManagement);
|
});
|
}
|
|
|
/**
|
* 新增应收费用管理
|
*
|
* @param receivableFeeManagement 应收费用管理
|
* @return 结果
|
*/
|
@Override
|
public int insertReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement)
|
{
|
receivableFeeManagement.setCreateTime(DateUtils.getNowDate());
|
|
// 保存主表信息
|
int result = receivableFeeManagementMapper.insertReceivableFeeManagement(receivableFeeManagement);
|
|
// 获取主表ID
|
Integer receivableFeeId = receivableFeeManagement.getId();
|
|
// 批量保存明细列表
|
if (receivableFeeManagement.getReceivableFeeDetailList() != null && !receivableFeeManagement.getReceivableFeeDetailList().isEmpty()) {
|
// 设置每个明细的应收费用管理ID
|
receivableFeeManagement.getReceivableFeeDetailList().forEach(detail -> {
|
detail.setReceivableFeeId(receivableFeeId);
|
detail.setCreateTime(DateUtils.getNowDate()); // 设置创建时间
|
});
|
|
// 调用批量插入方法
|
receivableFeeDetailService.insertReceivableFeeDetailBatch(receivableFeeManagement.getReceivableFeeDetailList());
|
}
|
|
return result;
|
}
|
|
/**
|
* 新增应收费用管理[批量]
|
*
|
* @param receivableFeeManagements 应收费用管理
|
* @return 结果
|
*/
|
@Override
|
public int insertReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements)
|
{
|
int rows = receivableFeeManagementMapper.insertReceivableFeeManagementBatch(receivableFeeManagements);
|
return rows;
|
}
|
|
/**
|
* 修改应收费用管理
|
*
|
* @param receivableFeeManagement 应收费用管理
|
* @return 结果
|
*/
|
@Override
|
public int updateReceivableFeeManagement(ReceivableFeeManagement receivableFeeManagement)
|
{
|
receivableFeeManagement.setUpdateTime(DateUtils.getNowDate());
|
return receivableFeeManagementMapper.updateReceivableFeeManagement(receivableFeeManagement);
|
}
|
|
/**
|
* 修改应收费用管理[批量]
|
*
|
* @param receivableFeeManagements 应收费用管理
|
* @return 结果
|
*/
|
@Override
|
public int updateReceivableFeeManagementBatch(List<ReceivableFeeManagement> receivableFeeManagements){
|
return receivableFeeManagementMapper.updateReceivableFeeManagementBatch(receivableFeeManagements);
|
}
|
|
/**
|
* 删除应收费用管理对象
|
*
|
* @param ids 需要删除的数据ID
|
* @return 结果
|
*/
|
@Override
|
public int deleteReceivableFeeManagementByIds(String ids)
|
{
|
return deleteReceivableFeeManagementByIds(Convert.toIntArray(ids));
|
}
|
|
/**
|
* 删除应收费用管理对象
|
*
|
*
|
* @param ids 需要删除的数据ID
|
* @return 结果
|
*/
|
@Override
|
public int deleteReceivableFeeManagementByIds(Integer[] ids)
|
{
|
return receivableFeeManagementMapper.deleteReceivableFeeManagementByIds(ids);
|
}
|
|
/**
|
* 删除应收费用管理信息
|
*
|
* @param id 应收费用管理ID
|
* @return 结果
|
*/
|
@Override
|
public int deleteReceivableFeeManagementById(Integer id)
|
{
|
return receivableFeeManagementMapper.deleteReceivableFeeManagementById(id);
|
}
|
}
|