package com.fdkankan.sale.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fdkankan.common.constant.PayStatus; import com.fdkankan.sale.entity.RepairPay; import com.fdkankan.sale.mapper.IRepairPayMapper; import com.fdkankan.sale.service.IRepairPayService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fdkankan.sale.util.DateUtil; import com.fdkankan.sale.vo.request.RepairPayParam; import com.fdkankan.sale.vo.response.RepairPayVo; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; /** *

* 服务实现类 *

* * @author * @since 2023-02-16 */ @Service public class RepairPayServiceImpl extends ServiceImpl implements IRepairPayService { @Override public RepairPay getByRepairId(String repairId,Integer payStatus) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(RepairPay::getRepairId,repairId); wrapper.eq(RepairPay::getPayStatus,payStatus); return this.getOne(wrapper); } @Override public RepairPay getByOrderSn(String out_trade_no) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(RepairPay::getOrderSn,out_trade_no); return this.getOne(wrapper); } @Override public void updatePayStatus(String out_trade_no, String trade_no, String openid) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(RepairPay::getOrderSn,out_trade_no); wrapper.set(RepairPay::getWxPayOpenId,openid); wrapper.set(RepairPay::getTradeNo,trade_no); wrapper.set(RepairPay::getPayStatus,1); wrapper.set(RepairPay::getPayTime, DateUtil.getDate()); this.update(wrapper); } @Override public Page pageList(RepairPayParam param) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); if(StringUtils.isNotBlank(param.getRepairId())){ wrapper.like(RepairPay::getRepairId,param.getRepairId()); } if(StringUtils.isNotBlank(param.getTradeNo())){ wrapper.like(RepairPay::getTradeNo,param.getTradeNo()); } if(StringUtils.isNotBlank(param.getStartTime())){ wrapper.between(RepairPay:: getPayTime,param.getStartTime(),param.getEndTime()); } wrapper.eq(RepairPay::getPayStatus,1); wrapper.orderByDesc(RepairPay::getCreateTime); Page page = this.page(new Page<>(param.getPageNum(), param.getPageSize()), wrapper); List listVo = new ArrayList<>(); for (RepairPay record : page.getRecords()) { RepairPayVo vo = new RepairPayVo(); BeanUtils.copyProperties(record,vo); listVo.add(vo); } Page pageVo = new Page<>(param.getPageNum(), param.getPageSize()); pageVo.setTotal(page.getTotal()); pageVo.setRecords(listVo); return pageVo; } }