package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.whyc.dto.Response; import com.whyc.mapper.MaterialHistoryMapper; import com.whyc.pojo.Material; import com.whyc.pojo.MaterialHistory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.LinkedList; import java.util.List; import java.util.stream.Collectors; @Service public class MaterialHistoryService { @Resource private MaterialHistoryMapper mapper; @Autowired @Lazy private MaterialService materialService; public void insert(MaterialHistory mh) { mapper.insert(mh); } public void addBatch(List materialHistoryList) { mapper.insertBatchSomeColumn(materialHistoryList); } //根据物料id查询dwg历史 public Response getDwgHisById(int materialId, int pageCurr, int pageSize) { PageHelper.startPage(pageCurr,pageSize); QueryWrapper wrapper=new QueryWrapper(); wrapper.eq("material_id",materialId); wrapper.isNotNull("dwg_url"); wrapper.orderByDesc("create_time"); List list=mapper.selectList(wrapper); PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list.size()>0,pageInfo,"根据物料id查询dwg历史"); } //根据物料id查询pic历史 public Response getPicHisById(int materialId, int pageCurr, int pageSize) { PageHelper.startPage(pageCurr,pageSize); QueryWrapper wrapper=new QueryWrapper(); wrapper.eq("material_id",materialId); wrapper.isNotNull("picture_url"); wrapper.orderByDesc("create_time"); List list=mapper.selectList(wrapper); PageInfo pageInfo=new PageInfo(list); return new Response().setII(1,list.size()>0,pageInfo,"根据物料id查询pic历史"); } public Response moveFromMaterialTable(int checkNum) { List list = materialService.getList(); list = list.stream().filter(temp-> temp.getPictureUrl()!=null || temp.getDwgUrl()!=null).collect(Collectors.toList()); List materialHistories = new LinkedList<>(); Date now = new Date(); for (Material material : list) { MaterialHistory history = new MaterialHistory(); history.setProductId(0); history.setMaterialId(material.getId()); history.setPictureUrl(material.getPictureUrl()); history.setDwgUrl(material.getDwgUrl()); history.setUpUserId(material.getUpUserId()==null?null:material.getUpUserId().intValue()); history.setCreateTime(now); materialHistories.add(history); } mapper.insertBatchSomeColumn(materialHistories); return new Response().set(1,true,"首次的物料图纸转移保存完成"); } }