package com.oying.modules.sh.service.impl; import com.oying.modules.sh.domain.OrderOperationLog; import com.oying.utils.FileUtil; import lombok.RequiredArgsConstructor; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.oying.modules.sh.service.OrderOperationLogService; import com.oying.modules.sh.domain.dto.OrderOperationLogQueryCriteria; import com.oying.modules.sh.mapper.OrderOperationLogMapper; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.oying.utils.PageUtil; import java.util.List; import java.util.Map; import java.io.IOException; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.LinkedHashMap; import com.oying.utils.PageResult; /** * @description 服务实现 * @author lixin * @date 2025-06-11 **/ @Service @RequiredArgsConstructor public class OrderOperationLogServiceImpl extends ServiceImpl implements OrderOperationLogService { private final OrderOperationLogMapper orderOperationLogMapper; @Override public PageResult queryAll(OrderOperationLogQueryCriteria criteria, Page page){ return PageUtil.toPage(orderOperationLogMapper.findAll(criteria, page)); } @Override public List queryAll(OrderOperationLogQueryCriteria criteria){ return orderOperationLogMapper.findAll(criteria); } @Override @Transactional(rollbackFor = Exception.class) public void create(OrderOperationLog resources) { orderOperationLogMapper.insert(resources); } @Override @Transactional(rollbackFor = Exception.class) public void update(OrderOperationLog resources) { OrderOperationLog orderOperationLog = getById(resources.getLogId()); orderOperationLog.copy(resources); orderOperationLogMapper.updateById(orderOperationLog); } @Override @Transactional(rollbackFor = Exception.class) public void deleteAll(List ids) { orderOperationLogMapper.deleteBatchIds(ids); } @Override public void download(List all, HttpServletResponse response) throws IOException { List> list = new ArrayList<>(); for (OrderOperationLog orderOperationLog : all) { Map map = new LinkedHashMap<>(); map.put("用户账号", orderOperationLog.getUsername()); map.put("用户类型", orderOperationLog.getUserType()); map.put("用户操作", orderOperationLog.getOperation()); map.put("备注", orderOperationLog.getRemark()); map.put("操作时的订单快照", orderOperationLog.getSnapshotData()); map.put("操作时间", orderOperationLog.getOperationTime()); map.put("订单号", orderOperationLog.getOrderNum()); list.add(map); } FileUtil.downloadExcel(list, response); } }