package com.doumee.service.business.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.core.constants.Constants; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.OrderLogMapper; import com.doumee.dao.business.model.OrderLog; import com.doumee.service.business.OrderLogService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.Objects; /** * 订单操作日志Service实现 * @author rk * @date 2026/04/13 */ @Service public class OrderLogServiceImpl implements OrderLogService { @Autowired private OrderLogMapper orderLogMapper; @Override public Integer create(OrderLog orderLog) { orderLogMapper.insert(orderLog); return orderLog.getId(); } @Override public void deleteById(Integer id) { orderLogMapper.update(new UpdateWrapper().lambda() .set(OrderLog::getDeleted, Constants.ONE) .eq(OrderLog::getId, id)); } @Override public void delete(OrderLog orderLog) { UpdateWrapper deleteWrapper = new UpdateWrapper<>(orderLog); orderLogMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List ids) { if (ids == null || ids.isEmpty()) { return; } for (Integer id : ids) { this.deleteById(id); } } @Override public void updateById(OrderLog orderLog) { orderLogMapper.updateById(orderLog); } @Override public void updateByIdInBatch(List orderLogs) { if (orderLogs == null || orderLogs.isEmpty()) { return; } for (OrderLog orderLog : orderLogs) { this.updateById(orderLog); } } @Override public OrderLog findById(Integer id) { OrderLog orderLog = orderLogMapper.selectById(id); if (Objects.isNull(orderLog)) { throw new BusinessException(ResponseStatus.DATA_EMPTY); } return orderLog; } @Override public OrderLog findOne(OrderLog orderLog) { QueryWrapper wrapper = new QueryWrapper<>(orderLog); return orderLogMapper.selectOne(wrapper); } @Override public List findList(OrderLog orderLog) { QueryWrapper wrapper = new QueryWrapper<>(orderLog); return orderLogMapper.selectList(wrapper); } @Override public PageData findPage(PageWrap pageWrap) { IPage page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); pageWrap.getModel().setDeleted(Constants.ZERO); queryWrapper.lambda().eq(OrderLog::getDeleted, pageWrap.getModel().getDeleted()); if (pageWrap.getModel().getOrderId() != null) { queryWrapper.lambda().eq(OrderLog::getOrderId, pageWrap.getModel().getOrderId()); } if (StringUtils.isNotBlank(pageWrap.getModel().getTitle())) { queryWrapper.lambda().like(OrderLog::getTitle, pageWrap.getModel().getTitle()); } if (pageWrap.getModel().getOrderStatus() != null) { queryWrapper.lambda().eq(OrderLog::getOrderStatus, pageWrap.getModel().getOrderStatus()); } if (pageWrap.getModel().getObjType() != null) { queryWrapper.lambda().eq(OrderLog::getObjType, pageWrap.getModel().getObjType()); } if (pageWrap.getModel().getOptUserType() != null) { queryWrapper.lambda().eq(OrderLog::getOptUserType, pageWrap.getModel().getOptUserType()); } if (pageWrap.getModel().getOptUserId() != null) { queryWrapper.lambda().eq(OrderLog::getOptUserId, pageWrap.getModel().getOptUserId()); } for (PageWrap.SortData sortData : pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(orderLogMapper.selectPage(page, queryWrapper)); } @Override public long count(OrderLog orderLog) { QueryWrapper wrapper = new QueryWrapper<>(orderLog); return orderLogMapper.selectCount(wrapper); } }