package com.nova.sankuai.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.nova.sankuai.domain.dto.RechargePageDto;
|
import com.nova.sankuai.domain.entity.DeductionRecord;
|
import com.nova.sankuai.domain.vo.DeductionRecordVo;
|
import com.nova.sankuai.infra.mapper.DeductionRecordMapper;
|
import com.nova.sankuai.infra.utils.PageRequest;
|
import com.nova.sankuai.infra.utils.PageUtil;
|
import com.nova.sankuai.service.IDeductionRecordService;
|
import lombok.AllArgsConstructor;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.Date;
|
|
/**
|
* @author weikangdi
|
* @create 2021/11/5
|
*/
|
@Service
|
@AllArgsConstructor
|
public class DeductionRecordServiceImpl extends ServiceImpl<DeductionRecordMapper, DeductionRecord> implements IDeductionRecordService {
|
|
private final DeductionRecordMapper mapper;
|
|
private final PageUtil pageUtil;
|
|
@Override
|
public IPage<DeductionRecordVo> pageModel(PageRequest pageRequest, RechargePageDto pageDto) {
|
IPage<DeductionRecordVo> page = mapper.pageModel(pageUtil.getPage(pageRequest), pageDto);
|
return page;
|
}
|
|
@Override
|
@Transactional(rollbackFor = {Exception.class})
|
public Long createRecord(Long customerRecordId, Long mechanismId, Integer status, String memo, Double deductionAmount) {
|
DeductionRecord deductionRecord = new DeductionRecord();
|
deductionRecord.setCreationDate(new Date());
|
deductionRecord.setCustomerRecordId(customerRecordId);
|
deductionRecord.setMechanismId(mechanismId);
|
deductionRecord.setDeductionAmount(deductionAmount);
|
deductionRecord.setStatus(status);
|
deductionRecord.setMemo(memo);
|
save(deductionRecord);
|
return deductionRecord.getId();
|
}
|
}
|