package com.northglass.service.breakmanage;
|
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.Set;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.ui.Model;
|
|
import com.northglass.constants.StateConstants.LoadMachineTaskState;
|
import com.northglass.constants.StateConstants.RawPackageTxtState;
|
import com.northglass.constants.StateConstants.ShelfRankState;
|
import com.northglass.entity.BreakReport;
|
import com.northglass.entity.LoadMachineRack;
|
import com.northglass.entity.LoadMachineTask;
|
import com.northglass.entity.OptPattern;
|
import com.northglass.entity.ProdLineState;
|
import com.northglass.entity.RawPackage;
|
import com.northglass.entity.RawPackageTxt;
|
import com.northglass.repository.BreakReportDao;
|
import com.northglass.repository.LoadMachineDao;
|
import com.northglass.repository.LoadMachineRackDao;
|
import com.northglass.repository.LoadMachineTaskDao;
|
import com.northglass.repository.OptPatternDao;
|
import com.northglass.repository.ProdLineStateDao;
|
import com.northglass.repository.RawPackageDao;
|
import com.northglass.repository.RawPackageTxtDao;
|
import com.northglass.repository.ShelfHoistDao;
|
import com.northglass.repository.ShelfRankDao;
|
import com.northglass.repository.ShelfTaskDao;
|
|
@Component
|
@Transactional
|
public class BreakService {
|
|
@Autowired
|
LoadMachineTaskDao loadMachineTaskDao;
|
|
@Autowired
|
RawPackageDao rawPackageDao;
|
|
@Autowired
|
LoadMachineRackDao loadMachineRackDao;
|
|
@Autowired
|
BreakReportDao breakReportDao;
|
|
@Autowired
|
LoadMachineDao loadMachineDao;
|
|
@Autowired
|
RawPackageTxtDao rawPackageTxtDao;
|
|
@Autowired
|
OptPatternDao optPatternDao;
|
|
@Autowired
|
ShelfRankDao shelfRankDao;
|
|
@Autowired
|
ShelfHoistDao shelfHoistDao;
|
|
@Autowired
|
ShelfTaskDao shelfTaskDao;
|
|
@Autowired
|
ProdLineStateDao prodLineStateDao;
|
|
|
/**
|
* 判断产线是否进入单机模式
|
* @return
|
*/
|
public boolean prodLineState(Long id){
|
ProdLineState lineState = prodLineStateDao.findOne(id);
|
//获取产线单机模式状态
|
boolean standalonestate = lineState.isStandalonestate();
|
|
return standalonestate;
|
|
}
|
|
|
|
|
|
|
/**
|
* 获取破损原片信息
|
* @return List<RawPackage>
|
*/
|
public void getBeforBreakRawPackage(long loadMachineId,Model model){
|
//放两个工位的rawpackage
|
Map<String, List<RawPackage>> rawMap = new HashMap<String, List<RawPackage>>();
|
|
int s=1;//记录第几种规格的rawpackage
|
|
//根据上片机找到所有含有玻璃的上片位
|
List<LoadMachineRack> loadMachineRacks = loadMachineRackDao.findLoadMachineRacksByLoadMachineId(loadMachineId);
|
|
//放第一个工位的rawpackage
|
List<RawPackage> rawList1 = new ArrayList<RawPackage>();
|
//放第二个工位的rawpackage
|
List<RawPackage> rawList2 = new ArrayList<RawPackage>();
|
|
if(loadMachineRacks.size()!=0){
|
for(LoadMachineRack rank:loadMachineRacks){
|
if(s==1){
|
String state = rank.getState();
|
if(rank!=null && state.equals(ShelfRankState.IN_WORKING)){
|
//上片位状态为正在工作说明才有原片
|
RawPackage rawPackage = rank.getRawPackage();
|
if(rawPackage!=null){
|
rawList1.add(rawPackage);
|
}
|
if(rawList1.size()!=0){
|
rawMap.put("rawList1", rawList1);
|
}
|
}
|
s++;
|
continue;
|
}
|
if(s==2){
|
String state = rank.getState();
|
if(rank!=null && state.equals(ShelfRankState.IN_WORKING)){
|
//上片位状态为正在工作说明才有原片
|
RawPackage rawPackage = rank.getRawPackage();
|
if(rawPackage!=null){
|
rawList2.add(rawPackage);
|
}
|
if(rawList2.size()!=0){
|
rawMap.put("rawList2", rawList2);
|
}
|
}
|
}
|
}
|
}
|
//找到当前料架上的原片
|
model.addAttribute("rawPackage1", rawList1);
|
model.addAttribute("rawPackage2", rawList2);
|
}
|
|
|
/**
|
* 处理破损,将原片数减去并且计入破损统计中
|
* @return
|
*/
|
public void dealBeforBreak(HttpServletRequest request,Model model){
|
//得到哪一个上片位上破损
|
String rankId = request.getParameter("rankid");
|
Long loadMachineId = Long.valueOf(request.getParameter("group"));
|
String breakPiece = request.getParameter("breakPiece");
|
int breakpiece =0;
|
if(breakPiece!=null && !"".equals(breakPiece)){
|
breakpiece = Integer.valueOf(breakPiece);
|
}
|
|
//放两个工位的rawpackage
|
Map<String, List<RawPackage>> rawMap = new HashMap<String, List<RawPackage>>();
|
|
int s=1;//记录第几个上片位的rawpackage
|
|
//根据上片机找到所有含有玻璃的上片位
|
List<LoadMachineRack> loadMachineRacks = loadMachineRackDao.findLoadMachineRacksByLoadMachineId(loadMachineId);
|
|
//放第一个工位的rawpackage
|
List<RawPackage> rawList1 = new ArrayList<RawPackage>();
|
//放第二个工位的rawpackage
|
List<RawPackage> rawList2 = new ArrayList<RawPackage>();
|
|
if(loadMachineRacks.size()!=0){
|
for(LoadMachineRack rank:loadMachineRacks){
|
if(s==1){
|
//第一个上片位
|
if(rank!=null){
|
String rankNumber = rank.getNumber();
|
RawPackage rawPackage = rank.getRawPackage();
|
if(rawPackage!=null && rawPackage.getState().equals(ShelfRankState.START)){
|
int pieces = rawPackage.getLeftPieces();
|
if(rankNumber.equals(rankId)){
|
pieces -= breakpiece;
|
//原片减1,原片状态改为in_using备用
|
rawPackage.setLeftPieces(pieces);
|
rawPackage.setState(ShelfRankState.IN_WORKING);
|
|
//到这一步,说明工位上的玻璃破损
|
//将该玻璃记录一份到breakreport表中
|
String optBatch = rawPackage.getRawPackageTxt().getTxt_name();
|
for(int l = 0;l<breakpiece; l++){
|
//破损几片,就统计几片
|
BreakReport breakReport = new BreakReport(optBatch, rawPackage.getGlassId() ,rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
breakReportDao.save(breakReport);
|
}
|
}
|
//将修改后的原片对象放进
|
rawList1.add(rawPackage);
|
}else if(rawPackage!=null && rawPackage.getState().equals(ShelfRankState.IN_WORKING)){
|
//看是否是点击的此上片位的破损按钮
|
if(rankNumber.equals(rankId)){
|
//是当前上片位
|
//上片机处于送玻璃过程中
|
LoadMachineTask workingGlass = loadMachineTaskDao.findWorkingGlass(loadMachineId);
|
if(workingGlass!=null){
|
//当前有切割任务
|
//当前原片真实片数减去输入的破损片数,正常情况breakpiece是1
|
rawPackage.setLeftPieces(rawPackage.getLeftPieces()-breakpiece);
|
//正在工作的原片状态改为等待中
|
workingGlass.setState(LoadMachineTaskState.WAITING);
|
//破损统计
|
// for(int l = 0;l<breakpiece; l++){
|
// //破损几片,就统计几片
|
// BreakReport breakReport = new BreakReport(rawPackage.getRawPackageTxt().getTxt_name(),rawPackage.getGlassId() , rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
// breakReportDao.save(breakReport);
|
// }
|
}else{
|
//当前无切割任务
|
//当前原片真实片数减去输入的破损片数,正常情况breakpiece是1
|
rawPackage.setLeftPieces(rawPackage.getLeftPieces()-breakpiece);
|
rawPackageDao.save(rawPackage);
|
//破损统计
|
// for(int l = 0;l<breakpiece; l++){
|
// //破损几片,就统计几片
|
// BreakReport breakReport = new BreakReport(rawPackage.getRawPackageTxt().getTxt_name(),rawPackage.getGlassId() , rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
// breakReportDao.save(breakReport);
|
// }
|
|
}
|
}
|
//将修改后的原片对象放进
|
rawList1.add(rawPackage);
|
}
|
if(rawList1.size()!=0){
|
rawMap.put("rawList1", rawList1);
|
}
|
s++;
|
continue;
|
}
|
}
|
if(s==2){
|
//2号上片位
|
if(rank!=null){
|
String rankNu = rank.getNumber();
|
RawPackage rawPackage = rank.getRawPackage();
|
if(rawPackage!=null && rawPackage.getState().equals(ShelfRankState.START)){
|
int pieces = rawPackage.getLeftPieces();
|
if(rankNu.equals(rankId)){
|
pieces -= breakpiece;
|
rawPackage.setLeftPieces(pieces);
|
//到这一步,说明工位1上的玻璃破损
|
//将该玻璃记录一份到breakreport表中
|
String optBatch = rawPackage.getRawPackageTxt().getTxt_name();
|
// for(int l = 0;l<breakpiece; l++){
|
// //破损几片,就统计几片
|
// BreakReport breakReport = new BreakReport(optBatch,rawPackage.getGlassId() , rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
// breakReportDao.save(breakReport);
|
// }
|
|
}
|
//将修改后的原片对象放进
|
rawList2.add(rawPackage);
|
}else if(rawPackage!=null && rawPackage.getState().equals(ShelfRankState.IN_WORKING)){
|
//是否是当前上片位
|
if(rankNu.equals(rankId)){
|
//上片机处于送玻璃过程中
|
LoadMachineTask workingGlass = loadMachineTaskDao.findWorkingGlass(loadMachineId);
|
if(workingGlass!=null){
|
//当前有切割任务
|
//当前原片真实片数减去输入的破损片数,正常情况breakpiece是1
|
rawPackage.setLeftPieces(rawPackage.getLeftPieces()-breakpiece);
|
//正在工作的原片状态改为等待中
|
workingGlass.setState(LoadMachineTaskState.WAITING);
|
//破损统计
|
// for(int l = 0;l<breakpiece; l++){
|
// //破损几片,就统计几片
|
// BreakReport breakReport = new BreakReport(rawPackage.getRawPackageTxt().getTxt_name(),rawPackage.getGlassId() , rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
// breakReportDao.save(breakReport);
|
// }
|
}else{
|
//当前无切割任务
|
//当前原片真实片数减去输入的破损片数,正常情况breakpiece是1
|
rawPackage.setLeftPieces(rawPackage.getLeftPieces()-breakpiece);
|
rawPackageDao.save(rawPackage);
|
//破损统计
|
// for(int l = 0;l<breakpiece; l++){
|
// //破损几片,就统计几片
|
// BreakReport breakReport = new BreakReport(rawPackage.getRawPackageTxt().getTxt_name(),rawPackage.getGlassId() , rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor(), loadMachineDao.findOne(loadMachineId).getNumber(), new Date());
|
// breakReportDao.save(breakReport);
|
// }
|
|
}
|
}
|
//将修改后的原片对象放进
|
rawList2.add(rawPackage);
|
}
|
if(rawList2.size()!=0){
|
rawMap.put("rawList2", rawList2);
|
}
|
}
|
}
|
|
|
}
|
|
}
|
//找到当前料架上的原片
|
model.addAttribute("rawPackage1", rawList1);
|
model.addAttribute("rawPackage2", rawList2);
|
|
}
|
|
/**
|
* 点击破损后计算是否需要创建吊装任务
|
* @return
|
*/
|
public RawPackage countBreak(HttpServletRequest request,Long loadmachineId){
|
//定义全局原片变量,用于接收不同渠道的请求
|
RawPackage raw = null;
|
|
if(request==null){
|
//找到当前产线上最近的状态为已完成的那条任务
|
LoadMachineTask lastCompleted = loadMachineTaskDao.findInWorkTaskByLoadMachine(loadmachineId);
|
if(lastCompleted!=null){
|
LoadMachineRack loadMachineRack = lastCompleted.getLoadMachineRack();
|
if(loadMachineRack!=null){
|
raw = loadMachineRack.getRawPackage();
|
}
|
}
|
}else{
|
//计算库存是否还充足
|
//得到哪一个上片位上破损
|
String rankId = request.getParameter("rankid");
|
LoadMachineRack loadRack = loadMachineRackDao.findLoadMachineRacksByRankNumber(rankId);
|
raw = loadRack.getRawPackage();
|
}
|
String glassId = raw.getGlassId();
|
double width = raw.getWidth();
|
double height = raw.getHeight();
|
double thickness = raw.getThickness();
|
//String color = raw.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color = raw.getColor();
|
|
int needPieces = 0;//初始化需要的原片
|
int leftPiece = 0;//初始化库存中剩余原片
|
//找出已下发的所有opt
|
List<RawPackageTxt> sendedOpts = rawPackageTxtDao.findByStatus(RawPackageTxtState.SENDED);
|
if(sendedOpts.size()!=0){
|
//从optpattern表中找出相同规格的原片
|
for(int i=0; i<sendedOpts.size(); i++){
|
RawPackageTxt rawPackageTxt = sendedOpts.get(i);
|
List<OptPattern> optPatternes =new ArrayList<OptPattern>(rawPackageTxt.getOptPatternes());
|
if(optPatternes.size()!=0){
|
for(int j=0;j<optPatternes.size();j++){
|
OptPattern optPattern = optPatternes.get(j);
|
double width2 = optPattern.getWidth();
|
double height2 = optPattern.getHeight();
|
double glassThickness = optPattern.getGlassThickness();
|
//String color2 = optPattern.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = optPattern.getColor();
|
int pieces = optPattern.getPieces();
|
int completedPieces = optPattern.getCompletedPieces();
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2) && pieces>completedPieces){
|
needPieces = needPieces+pieces-completedPieces;
|
}
|
}
|
}
|
//找出库存原片数量
|
List<RawPackage> rawPackagees = rawPackageTxt.getRawPackagees();
|
if(rawPackagees.size()!=0){
|
for(int j=0;j<rawPackagees.size();j++){
|
RawPackage rawPackage = rawPackagees.get(j);
|
double width2 = rawPackage.getWidth();
|
double height2 = rawPackage.getHeight();
|
double glassThickness = rawPackage.getThickness();
|
//String color2 = rawPackage.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = rawPackage.getColor();
|
int leftPieces = rawPackage.getLeftPieces();//剩余原片数量
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2)){
|
leftPiece += leftPieces;
|
}
|
}
|
}
|
}
|
|
}
|
|
//找出已领取的opt
|
List<RawPackageTxt> acceptOpts = rawPackageTxtDao.findByStatus(RawPackageTxtState.HAVE_ACCEPT);
|
if(acceptOpts.size()!=0){
|
//从optpattern表中找出相同规格的原片
|
for(int i=0; i<acceptOpts.size(); i++){
|
//找出需要切割的片数
|
RawPackageTxt rawPackageTxt = acceptOpts.get(i);
|
List<OptPattern> optPatternes =new ArrayList<OptPattern>(rawPackageTxt.getOptPatternes());
|
if(optPatternes.size()!=0){
|
for(int j=0;j<optPatternes.size();j++){
|
OptPattern optPattern = optPatternes.get(j);
|
double width2 = optPattern.getWidth();
|
double height2 = optPattern.getHeight();
|
double glassThickness = optPattern.getGlassThickness();
|
//String color2 = optPattern.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = optPattern.getColor();
|
int pieces = optPattern.getPieces();
|
int completedPieces = optPattern.getCompletedPieces();
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2) && pieces>completedPieces){
|
needPieces = needPieces+pieces-completedPieces;
|
}
|
}
|
}
|
//找出库存原片数量
|
List<RawPackage> rawPackagees = rawPackageTxt.getRawPackagees();
|
if(rawPackagees.size()!=0){
|
for(int j=0;j<rawPackagees.size();j++){
|
RawPackage rawPackage = rawPackagees.get(j);
|
double width2 = rawPackage.getWidth();
|
double height2 = rawPackage.getHeight();
|
double glassThickness = rawPackage.getThickness();
|
//String color2 = rawPackage.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = rawPackage.getColor();
|
int leftPieces = rawPackage.getLeftPieces();//剩余原片数量
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2)){
|
leftPiece += leftPieces;
|
}
|
}
|
}
|
}
|
}
|
|
//找出中断的opt
|
List<RawPackageTxt> interruptOpts = rawPackageTxtDao.findByStatus(RawPackageTxtState.INTERRUPT);
|
if(interruptOpts.size()!=0){
|
//从optpattern表中找出相同规格的原片
|
for(int i=0; i<interruptOpts.size(); i++){
|
RawPackageTxt rawPackageTxt = interruptOpts.get(i);
|
List<OptPattern> optPatternes =new ArrayList<OptPattern>(rawPackageTxt.getOptPatternes());
|
if(optPatternes.size()!=0){
|
for(int j=0;j<optPatternes.size();j++){
|
OptPattern optPattern = optPatternes.get(j);
|
double width2 = optPattern.getWidth();
|
double height2 = optPattern.getHeight();
|
double glassThickness = optPattern.getGlassThickness();
|
//String color2 = optPattern.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = optPattern.getColor();
|
int pieces = optPattern.getPieces();
|
int completedPieces = optPattern.getCompletedPieces();
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2) && pieces>completedPieces){
|
needPieces = needPieces+pieces-completedPieces;
|
}
|
}
|
}
|
//找出库存原片数量
|
List<RawPackage> rawPackagees = rawPackageTxt.getRawPackagees();
|
if(rawPackagees.size()!=0){
|
for(int j=0;j<rawPackagees.size();j++){
|
RawPackage rawPackage = rawPackagees.get(j);
|
double width2 = rawPackage.getWidth();
|
double height2 = rawPackage.getHeight();
|
double glassThickness = rawPackage.getThickness();
|
//String color2 = rawPackage.getColor().substring(GlassColor.START_INDEX, GlassColor.END_INDEX);
|
String color2 = rawPackage.getColor();
|
int leftPieces = rawPackage.getLeftPieces();//剩余原片数量
|
//找出规格相同且未完成的pattern
|
if(width==width2 && height==height2 && thickness==glassThickness && color.equals(color2)){
|
leftPiece += leftPieces;
|
}
|
}
|
}
|
}
|
}
|
|
//库存中原片数量少于需要切割的原片数量
|
if(leftPiece<needPieces){
|
//缺少多少片
|
int lackPieces = needPieces - leftPiece;
|
//创建原片信息
|
RawPackage rawpackage = new RawPackage(glassId, lackPieces, width, height, thickness, color);
|
return rawpackage;
|
}
|
|
return null;
|
|
}
|
|
|
/**
|
* 获取上片后破损原片信息
|
* @return List<RawPackage>
|
*/
|
public String getAfterBreakRawPackage(long group){
|
|
//找到当前产线上最近的状态为已完成的那条任务
|
LoadMachineTask lastCompleted = loadMachineTaskDao.findLastCompleted(group);
|
if(lastCompleted!=null){
|
RawPackage rawPackage = lastCompleted.getRawPackage();
|
if(rawPackage!=null){
|
//只需new出一个对象即可,因为当前料架上的原片都是一样的
|
RawPackage raw = new RawPackage(rawPackage.getWidth(), rawPackage.getHeight(), rawPackage.getThickness(), rawPackage.getColor());
|
StringBuffer afterBreakHtml = new StringBuffer();
|
afterBreakHtml.append("<div style='background:#EFF7F4;width: 300px;height: 300px;margin-left: 600px;margin-top: 20px;position:relative;font-size: 20px'>");
|
afterBreakHtml.append("<div align='center' style='position:absolute;top: 100px;left: 60px;'>");
|
afterBreakHtml.append("<tt>").append(raw.getWidth()).append("</tt>");
|
afterBreakHtml.append("<tt>*</tt>");
|
afterBreakHtml.append("<tt>").append(raw.getHeight()).append("</tt>");
|
afterBreakHtml.append("<tt>*</tt>");
|
afterBreakHtml.append("<tt>").append(raw.getThickness()).append("</tt>");
|
afterBreakHtml.append("<br><br>");
|
afterBreakHtml.append("<tt>").append(raw.getColor()).append("</tt>");
|
afterBreakHtml.append("<br><br>");
|
afterBreakHtml.append("<tt>").append("<a href='#' onclick='dealBreak()'>").append("break").append("</a></tt>");
|
afterBreakHtml.append("</div>");
|
afterBreakHtml.append("</div>");
|
|
String html = afterBreakHtml.toString();
|
return html;
|
}
|
}
|
return null;
|
}
|
|
/**
|
* 上片后破损处理,原片数不用减1,只需将当前任务对象和下一任务对象的状态改为等待中
|
* 将破损原片加入破损统计表中
|
* @return
|
*/
|
public String dealAfterBreak(long group){
|
//找到当前任务的最后一个状态为已完成的
|
LoadMachineTask lastCompleted = loadMachineTaskDao.findLastCompleted(group);
|
|
//将此对象和下一个对象状态全部改为等待中
|
if(lastCompleted!=null){
|
Long id = lastCompleted.getId();
|
lastCompleted.setState(LoadMachineTaskState.IN_WORK);//等待中
|
loadMachineTaskDao.save(lastCompleted);
|
LoadMachineTask nextTask = loadMachineTaskDao.findNextTask(id+1, group);
|
if(nextTask!=null){
|
nextTask.setState(LoadMachineTaskState.WAITING);//等待中
|
loadMachineTaskDao.save(nextTask);
|
|
//将optpattern表中的完成片数减去1
|
OptPattern optPattern = lastCompleted.getOptPattern();
|
int completedPieces = optPattern.getCompletedPieces();
|
if(completedPieces>0){
|
//完成片数大于0才做修改
|
completedPieces--;
|
optPattern.setCompletedPieces(completedPieces);
|
}
|
|
//将当前原片完成片数-1
|
RawPackage rawPackage = lastCompleted.getLoadMachineRack().getRawPackage();
|
|
rawPackage.setState(ShelfRankState.IN_WORKING);
|
|
String manufacturer = rawPackage.getManufacturer();
|
int manu = 0;
|
if(manufacturer!=null && !"".equals(manufacturer)){
|
manu = Integer.valueOf(manufacturer)-1;
|
}
|
rawPackage.setManufacturer(String.valueOf(manu));
|
|
|
//将当前破碎原片统计
|
String glassId = optPattern.getGlassId();
|
double width = optPattern.getWidth();
|
double height = optPattern.getHeight();
|
double thickness = optPattern.getGlassThickness();
|
String color = optPattern.getColor();
|
String opt_batch = optPattern.getBatch();
|
|
String loadmachine_number = loadMachineDao.findOne(group).getNumber();
|
BreakReport breakReport = new BreakReport(opt_batch, glassId, width, height, thickness, color, loadmachine_number, new Date());
|
breakReportDao.save(breakReport);
|
return "ok";
|
}else{
|
return "nonext";
|
}
|
}else{
|
return "nocompleted";
|
}
|
}
|
|
|
}
|