package com.example.springboot.service; import java.sql.SQLException; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.example.springboot.common.Result; import com.example.springboot.entity.Out_slice; import com.example.springboot.entity.StorageCage; import com.example.springboot.mapper.HomeMapper; import com.example.springboot.mapper.SpianMapper; @Service public class OutSliceServive { @Autowired private HomeMapper homeMapper; @Autowired private SpianMapper spianMapper; @Autowired SpianService spianService; @Autowired StorageCageService storageCageService; public void AddOutSliceS(String[][] AluminumFrames) throws SQLException { // int sequence = homeMapper.SelectMaxSquence(); // 添加到数据库 // for (String[] item : AluminumFrames) { // if (item[1] == "true") { // Short state=0; // String position = jdbcConnections.SelectPositionByFrameBarcode(item[3]); // homeMapper.AddOutSliceS(item[0], item[2], item[3], item[4], item[5], // sequence, position,state ); // sequence += 1; // } // } } // 查询出片队列 public List SelectProductionqueue() { List listoutslice = homeMapper.SelectProductionqueue(); // for (Out_slice out_slice : listoutslice) { // out_slice.setstorageCage(homeMapper.SelectStorageGlassById(out_slice.getGlassId())); // } return listoutslice; } // 完成出片任务 public Result CompleteQueue(String id, String frameid, String glassid) { homeMapper.CompleteQueueByGlassId(glassid); Map map = new HashMap<>(); map.put("message", "200"); return Result.success(map); } // 确认后完成修改出片队列状态 public void CompleteQueueByGlassId(String glassid) { homeMapper.CompleteQueueByGlassId(glassid); Out_slice outslice = homeMapper.SelectQueueByglassid(glassid); Short num = homeMapper.SelectCountByFrameNo(outslice.getBarCode()); if (num == 0) { homeMapper.CompleteQueueByFrameNo(outslice.getBarCode()); } } // 终止进片/出片 public void StopTask(String glassid, int i) { if (i == 0) {// 进片终止 homeMapper.UpdateTask(0,glassid);// 完成进片任务 DeleteByGlassIDs(glassid);//删除进片任务 homeMapper.UpdateOutSliceGlass(glassid); } else if(i==1) {// 出片终止 homeMapper.UpdateTask(1,glassid);// 完成出片任务 spianMapper.UpdataGlassCage(glassid, 0);// 清除出片格子玻璃信息 homeMapper.UpdateOutSliceGlass(glassid);// 修改出片队列此玻璃状态为缺失 }else{ //清除进片 homeMapper.UpdateTask(2,glassid); homeMapper.UpdateOutSliceGlass(glassid); //清除进出片玻璃id DeleteByGlassIDs(glassid); } } // 删除笼内玻璃还原宽度 public void DeleteByGlassIDs(String glassid) { List glassinfor = homeMapper.SelectStorageInfoByGlassId(glassid); for (StorageCage storageCage : glassinfor) { if (storageCage.getState().equals("2")) { homeMapper.UpdataCageWidth(storageCage.getGlassWidth(), storageCage.getCage(), storageCage.getCell()); } } homeMapper.DeleteByGlassID(glassid); } //修改铝框确认状态 public Result FrameStateUpdate(String frameno) { homeMapper.FrameStateUpdate(frameno); Map map = new HashMap<>(); map.put("message", "200"); return Result.success(map); } //查询当前铝框 public Out_slice SelectCurrentFrame() { return homeMapper.SelectCurrentFrame(); } public Result CompleteQueueByFrameNo(String frameNo) { Map map = new HashMap<>(); Short num= homeMapper.SelectOutingQueueCount(frameNo); if(num==0){ homeMapper.CompleteQueueByFrameNo(frameNo); map.put("message", "200"); }else{ map.put("message", "300"); } return Result.success(map); } }