料号长宽高重量限制,界面查询优化

main
userName 2025-03-07 17:35:45 +08:00
parent 094643986e
commit b7f398fa97
17 changed files with 92 additions and 44 deletions

View File

@ -556,6 +556,7 @@ public class AgvTask extends VersionalEntity {
jsonObject2.put("containerCode", agvTask.getContainerCode()); jsonObject2.put("containerCode", agvTask.getContainerCode());
if(agvTask.getType()!=null&&agvTask.getType().equals("AGV上料")) { if(agvTask.getType()!=null&&agvTask.getType().equals("AGV上料")) {
jsonObject2.put("endSlotType", agvTask.getEndSlotType()); jsonObject2.put("endSlotType", agvTask.getEndSlotType());
//WORKBIN_INBOUND=入库
if (!agvTask.getWorkMode().equals("WORKBIN_INBOUND")) { if (!agvTask.getWorkMode().equals("WORKBIN_INBOUND")) {
jsonObject2.put("endSlotCode", agvTask.getEndSlotCode()); jsonObject2.put("endSlotCode", agvTask.getEndSlotCode());
} }

View File

@ -807,7 +807,7 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
agvTask.setRobotJobId(TimeNumberUtils.getBigTaskCode()); agvTask.setRobotJobId(TimeNumberUtils.getBigTaskCode());
agvTask.setSlotCode(ls.getOutLocation()); agvTask.setSlotCode(ls.getOutLocation());
agvTask.setWorkMode("WORKBIN_OUTBOUND"); agvTask.setWorkMode("WORKBIN_OUTBOUND");
setContainerCode(stockLP, agvTask,ls);//指定接驳口 setContainerCode(stockLP, agvTask,ls);//指定接驳口,点位指定接驳口
agvTask.setJobType("WORKBIN_MOVE"); agvTask.setJobType("WORKBIN_MOVE");
agvTask.setBeforePutConfirm(true); agvTask.setBeforePutConfirm(true);
// agvTask.setClassification("AGV取料"); // agvTask.setClassification("AGV取料");
@ -842,6 +842,7 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
List<Stock> stocks = commonDao.findByQuery(" from Stock where LP='"+stockLP+"'"); List<Stock> stocks = commonDao.findByQuery(" from Stock where LP='"+stockLP+"'");
if (ls!=null&&(ls.getCode().equals("214")||ls.getCode().equals("215"))) { if (ls!=null&&(ls.getCode().equals("214")||ls.getCode().equals("215"))) {
agvTask.setEndSlotCode(ls.getOutLocation()); agvTask.setEndSlotCode(ls.getOutLocation());
agvTask.setSlotCode(ls.getOutLocation());
agvTask.setStationCode(ls.getGzzCode()); agvTask.setStationCode(ls.getGzzCode());
}else { }else {
// if (stocks.size()>0&&stocks.get(0).getDescribe()!=null) { // if (stocks.size()>0&&stocks.get(0).getDescribe()!=null) {
@ -866,20 +867,22 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
// } // }
// } // }
// } // }
// if(locationStorages1.size()>0) { // if(locationStorages1.size()>0&&locationStorages1.get(0).getConnectionPort()!=null) {
// agvTask.setEndSlotCode(locationStorages1.get(0).getConnectionPort()); // agvTask.setEndSlotCode(locationStorages1.get(0).getConnectionPort());
// // agvTask.setSlotCode(locationStorages1.get(0).getConnectionPort());
// List<LocationStorage> locationStorages = commonDao.findByQuery(" from LocationStorage where outLocation='"+locationStorages1.get(0).getConnectionPort()+"'"); // List<LocationStorage> locationStorages = commonDao.findByQuery(" from LocationStorage where outLocation='"+locationStorages1.get(0).getConnectionPort()+"'");
// if (locationStorages.size()>0) { // if (locationStorages.size()>0) {
// agvTask.setStationCode(locationStorages.get(0).getGzzCode()); // agvTask.setStationCode(locationStorages.get(0).getGzzCode());
// } // }
// }else { // }else {
// agvTask.setEndSlotCode(ls.getOutLocation()); // agvTask.setEndSlotCode(ls.getOutLocation());
// agvTask.setSlotCode(ls.getOutLocation());
// agvTask.setStationCode(ls.getGzzCode()); // agvTask.setStationCode(ls.getGzzCode());
// } // }
// }else { // }else {
agvTask.setEndSlotCode(ls.getOutLocation()); agvTask.setEndSlotCode(ls.getOutLocation());
agvTask.setStationCode(ls.getGzzCode());//工作站接驳口 agvTask.setSlotCode(ls.getOutLocation());
agvTask.setStationCode(ls.getGzzCode());//工作站接驳口S1-8
// } // }
} }
@ -1313,6 +1316,7 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
commonDao.store(agvTask); commonDao.store(agvTask);
return interfaceReqManager.sendAgvTask(agvTask); return interfaceReqManager.sendAgvTask(agvTask);
} }
//生成AGV任务
@Override @Override
public AgvTask callLocAndCallHJ(String stockLP, Long id, Long workFaces,Integer identification,Long jobPriorityType, public AgvTask callLocAndCallHJ(String stockLP, Long id, Long workFaces,Integer identification,Long jobPriorityType,
String classification,String founderName,String remarks) { String classification,String founderName,String remarks) {
@ -1789,8 +1793,8 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
if(objs.size() > 0) { if(objs.size() > 0) {
int minQty=1000000; int minQty=1000000;
int maxqty=0; int maxqty=0;
String lps=agvTask.getEndSlotCode(); String lps=agvTask.getEndSlotCode();//终点接驳口编号
String gzz=agvTask.getStationCode(); String gzz=agvTask.getStationCode();//AGV接驳口编号
//计算最少接驳口任务 //计算最少接驳口任务
for(CommonCode cc:objs){ for(CommonCode cc:objs){
@ -1807,8 +1811,8 @@ public class DefaultAgvTaskManager extends DefaultBaseManager implements AgvTask
} }
} }
if(maxqty-minQty>12) { if(maxqty-minQty>12) {
agvTask.setEndSlotCode(lps); agvTask.setEndSlotCode(lps);//终点接驳口编号
agvTask.setSlotCode(lps); agvTask.setSlotCode(lps);//库位
agvTask.setStationCode(gzz); agvTask.setStationCode(gzz);
} }
// List<LocationStorage> locationStorages = commonDao.findByQuery(" from LocationStorage where outLocation='"+agvTask.getEndSlotCode()+"'"); // List<LocationStorage> locationStorages = commonDao.findByQuery(" from LocationStorage where outLocation='"+agvTask.getEndSlotCode()+"'");

View File

@ -144,6 +144,7 @@ public class DefaultItemManager extends DefaultBaseManager implements
i.setBeExtend2(item.isBeExtend2()); i.setBeExtend2(item.isBeExtend2());
i.setBeUnpacking(item.isBeUnpacking()); i.setBeUnpacking(item.isBeUnpacking());
i.setDefaultWarehouseArea(item.getDefaultWarehouseArea()); i.setDefaultWarehouseArea(item.getDefaultWarehouseArea());
i.setSmallUnit(item.getSmallUnit());
double a=length*width*height; double a=length*width*height;
if(i.getPackNumber()>0) { if(i.getPackNumber()>0) {
i.setVolume(a/i.getPackNumber()); i.setVolume(a/i.getPackNumber());

View File

@ -216,7 +216,8 @@ public interface QueryAppManager extends BaseManager {
*/ */
@Transactional @Transactional
JSONObject picking(String taskId,long sid,String billCode,String serials,String itemCode,String mac,double quantity, JSONObject picking(String taskId,long sid,String billCode,String serials,String itemCode,String mac,double quantity,
String lsCode,long number,long userId,long warehouseId,boolean reSAP,String spr,long location_id,String beUnpacking); String lsCode,long number,long userId,long warehouseId,boolean reSAP,String spr,
long location_id,String beUnpacking);
//分配查询库存列表 //分配查询库存列表
JSONObject queryAllcateInv(long taskId,long userId,long warehouseId); JSONObject queryAllcateInv(long taskId,long userId,long warehouseId);

View File

@ -42,6 +42,7 @@ import com.dev.swms.server.model.base.ItemKey;
import com.dev.swms.server.model.base.Location; import com.dev.swms.server.model.base.Location;
import com.dev.swms.server.model.base.LocationStorage; import com.dev.swms.server.model.base.LocationStorage;
import com.dev.swms.server.model.base.WarehouseArea; import com.dev.swms.server.model.base.WarehouseArea;
import com.dev.swms.server.model.base.WarehouseAreaStatus;
import com.dev.swms.server.model.base.Worker; import com.dev.swms.server.model.base.Worker;
import com.dev.swms.server.model.interfaceLog.DataInterfaceLog; import com.dev.swms.server.model.interfaceLog.DataInterfaceLog;
import com.dev.swms.server.model.interfaceLog.InterfaceLog; import com.dev.swms.server.model.interfaceLog.InterfaceLog;
@ -63,6 +64,7 @@ import com.dev.swms.server.model.receiving.STATUS;
import com.dev.swms.server.model.receiving.SlotType; import com.dev.swms.server.model.receiving.SlotType;
import com.dev.swms.server.model.shipping.PickTicket; import com.dev.swms.server.model.shipping.PickTicket;
import com.dev.swms.server.model.shipping.PickTicketDetail; import com.dev.swms.server.model.shipping.PickTicketDetail;
import com.dev.swms.server.model.shipping.SeedWall;
import com.dev.swms.server.service.base.LocationStorageManager; import com.dev.swms.server.service.base.LocationStorageManager;
import com.dev.swms.server.service.interfaceLog.ApiURL; import com.dev.swms.server.service.interfaceLog.ApiURL;
import com.dev.swms.server.service.interfaceLog.InterfaceManager; import com.dev.swms.server.service.interfaceLog.InterfaceManager;
@ -659,7 +661,7 @@ public class DefaultInterfaceReqManager extends DefaultBaseManager implements In
@Override @Override
public String doWmsReqAgv(String URL, String xmlInfo,String f) { public String doWmsReqAgv(String URL, String xmlInfo,String f) {
long stime1 = System.currentTimeMillis(); long stime1 = System.currentTimeMillis();
InterfaceLog interfaceLog = interfaceManager.storeInterfaceLog("wms-agv下发任务:", f, "WMS", "RCS", "http", InterfaceLog interfaceLog = interfaceManager.storeInterfaceLog("wms-agv下发任务:", f, "WMS", "RCS", URL,
xmlInfo); xmlInfo);
String str = ""; String str = "";
InputStream instr = null; InputStream instr = null;
@ -1441,16 +1443,26 @@ public class DefaultInterfaceReqManager extends DefaultBaseManager implements In
public void saptoWmsTaskStatus(List<Long> ids,int status,boolean SAPstatus) { public void saptoWmsTaskStatus(List<Long> ids,int status,boolean SAPstatus) {
if(SAPstatus) { if(SAPstatus) {
PickTicket pt =null; PickTicket pt =null;
SeedWall seedWall=null;
for(Long tid:ids) { for(Long tid:ids) {
Task t= commonDao.load(Task.class, tid); Task t= commonDao.load(Task.class, tid);
if(pt==null) { if(pt==null) {
PickTicketDetail ptd=commonDao.load(PickTicketDetail.class, t.getPickTicketDetail().getId()); PickTicketDetail ptd=commonDao.load(PickTicketDetail.class, t.getPickTicketDetail().getId());
pt=commonDao.load(PickTicket.class, ptd.getPickTicket().getId()); pt=commonDao.load(PickTicket.class, ptd.getPickTicket().getId());
}
if(seedWall==null&&t.getSeedWall()!=null&&pt.getBillType().getId()==1094) {
seedWall=commonDao.load(SeedWall.class, t.getSeedWall().getId());
} }
t.setStatusCode(status); t.setStatusCode(status);
commonDao.store(t); commonDao.store(t);
} }
if(pt!=null) { if(pt!=null) {
if(seedWall!=null) {
seedWall.setStatus(WarehouseAreaStatus.FREE);
seedWall.setTaskCode(null);
seedWall.setStock(null);
commonDao.store(seedWall);
}
pt.setPrintCount(status); pt.setPrintCount(status);
commonDao.store(pt); commonDao.store(pt);
} }

View File

@ -1543,6 +1543,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
String orderNumber=JSONobj.has("orderNumber") ? JSONobj.getString("orderNumber") : "";//单号 String orderNumber=JSONobj.has("orderNumber") ? JSONobj.getString("orderNumber") : "";//单号
String applicant=JSONobj.has("applicant") ? JSONobj.getString("applicant") : "";//申请人 String applicant=JSONobj.has("applicant") ? JSONobj.getString("applicant") : "";//申请人
String handoverLocation=JSONobj.has("handoverLocation") ? JSONobj.getString("handoverLocation") : "";//交单位置 String handoverLocation=JSONobj.has("handoverLocation") ? JSONobj.getString("handoverLocation") : "";//交单位置
String WorkflowNumber=JSONobj.has("WorkflowNumber") ? JSONobj.getString("WorkflowNumber") : "";//OA流程编号
List<PickTicket> pickt=commonDao.findByQuery(" from PickTicket pt where pt.code='"+orderNumber+"'"); List<PickTicket> pickt=commonDao.findByQuery(" from PickTicket pt where pt.code='"+orderNumber+"'");
log.setFunction(orderNumber); log.setFunction(orderNumber);
@ -1560,6 +1561,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
pickTicket.setOrderQuantity(expectedQuantity);//出库数量 pickTicket.setOrderQuantity(expectedQuantity);//出库数量
pickTicket.setOrderDate(new Date());//创建日期 pickTicket.setOrderDate(new Date());//创建日期
pickTicket.setRelatedBill1(orderNumber);//申请编号 pickTicket.setRelatedBill1(orderNumber);//申请编号
pickTicket.setRelatedBill2(WorkflowNumber);//流程编号
pickTicket.setUpdateTime(new Date()); pickTicket.setUpdateTime(new Date());
pickTicket.setWorkerName4(applicant); pickTicket.setWorkerName4(applicant);
pickTicket.setWorkerName1(applicant); pickTicket.setWorkerName1(applicant);

View File

@ -2117,7 +2117,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
+ "max(item.be_Extend1) as be_Extend1,max(item.be_Extend2) as be_Extend2, " + "max(item.be_Extend1) as be_Extend1,max(item.be_Extend2) as be_Extend2, "
+ "max(ik.PROP_LC2) as propLC2,max(ik.PROP_LC3) as propLC3,max(pt.sourceType) as sourceType ," + "max(ik.PROP_LC2) as propLC2,max(ik.PROP_LC3) as propLC3,max(pt.sourceType) as sourceType ,"
+ " max(lt.TO_CELL_CODE) as END_REGION ,max(z.LEVELS) as LEVELS,max(ptd.strBill13) as strBill13," + " max(lt.TO_CELL_CODE) as END_REGION ,max(z.LEVELS) as LEVELS,max(ptd.strBill13) as strBill13,"
+ " item.BE_UNPACKING as BE_UNPACKING,item.smallUnit as smallUnit " + " item.BE_UNPACKING as BE_UNPACKING,max(item.smallUnit) as smallUnit "
+ " from task t " + " from task t "
+ " left join PICK_TICKET_DETAIL ptd on ptd.id=t.PICK_TICKET_DETAIL_ID " + " left join PICK_TICKET_DETAIL ptd on ptd.id=t.PICK_TICKET_DETAIL_ID "
+ " left join PICK_TICKET pt on pt.id=ptd.PICK_TICKET_ID " + " left join PICK_TICKET pt on pt.id=ptd.PICK_TICKET_ID "
@ -3494,7 +3494,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
obj.put("propLC2",thb.getPropLC3()); obj.put("propLC2",thb.getPropLC3());
obj.put("be_Extend1",item.isBeExtend1()); obj.put("be_Extend1",item.isBeExtend1());
obj.put("be_Extend2",item.isBeExtend2()); obj.put("be_Extend2",item.isBeExtend2());
obj.put("beUnpacking",item.getSmallUnit());//是否最小包装 obj.put("beUnpacking",item.getSmallUnit()==null?"":item.getSmallUnit());//是否最小包装
if(thb.getSourceType()!=null&&thb.getSourceType().equals("313")) { if(thb.getSourceType()!=null&&thb.getSourceType().equals("313")) {
obj.put("be_Supernova","true");//是否超发 obj.put("be_Supernova","true");//是否超发
}else { }else {

View File

@ -3254,7 +3254,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
//给SAP回传状态 //给SAP回传状态
if(pdids.size()>0) { if(pdids.size()>0) {
for(Long pid:pdids) { for(Long pid:pdids) {
List<Task> tasks= commonDao.findByQuery(" from Task t where " List<Task> tasks= commonDao.findByQuery(" from Task t where t.statusCode=0 and "
+ " t.pickTicketDetail.pickTicket.id="+pid+" and t.planQuantity>0 "); + " t.pickTicketDetail.pickTicket.id="+pid+" and t.planQuantity>0 ");
boolean SAPstatus= interfaceReqManager.wmsSapZhuantaihuichuang(tasks, 0,"",1);//状态回传 boolean SAPstatus= interfaceReqManager.wmsSapZhuantaihuichuang(tasks, 0,"",1);//状态回传
} }

View File

@ -4343,9 +4343,9 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
} }
if (wa!=null&&(wa.getLevels()==0||!wa.isBeBill())) { if (wa!=null&&(wa.getLevels()==0||!wa.isBeBill())) {
task.setInventoryStatus("合单完成"); task.setInventoryStatus("合单完成");
if(!bt.isBePresentation()) { }
task.setInventoryStatus("交单完成"); if(!bt.isBePresentation()) {
} task.setInventoryStatus("交单完成");
} }
if(beUnpacking!=null&&beUnpacking.length()>0) { if(beUnpacking!=null&&beUnpacking.length()>0) {
task.setBeUnpacking(true); task.setBeUnpacking(true);
@ -8599,7 +8599,12 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
public void shiftComplete(String taskids, Long sid,Long lcid,Long workerId) { public void shiftComplete(String taskids, Long sid,Long lcid,Long workerId) {
List<Task> list=commonDao.findByQuery(" from Task t where t.id in("+taskids+")"); List<Task> list=commonDao.findByQuery(" from Task t where t.id in("+taskids+")");
List<String> listStock=commonDao.findByQuery("select t.dstLP.LP from Task t where "
+ "t.id in("+taskids+") and t.movedQuantityMU>0 group by t.dstLP.LP");
Location loc=commonDao.load(Location.class, lcid); Location loc=commonDao.load(Location.class, lcid);
if(listStock.size()>1) {
throw new BusinessException(listStock.toString()+"容器错误");
}
if(loc.getType().equals("交接区")) { if(loc.getType().equals("交接区")) {
throw new BusinessException(loc.getCode()+"库位为交单区"); throw new BusinessException(loc.getCode()+"库位为交单区");
} }
@ -10062,12 +10067,13 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
Stock stock=list1.get(i); Stock stock=list1.get(i);
stock.setLocationIndex(stock.getLocationIndex()+1); stock.setLocationIndex(stock.getLocationIndex()+1);
commonDao.store(stock); commonDao.store(stock);
// boolean sh=huichuanStock(stock.getLP()); boolean sh=true;
// if(sh) { sh=huichuanStock(stock.getLP());
if(sh) {
obj.put("s_code", stock.getLP()); obj.put("s_code", stock.getLP());
obj.put("s_id", stock.getId()); obj.put("s_id", stock.getId());
break; break;
// } }
} }
}else { }else {
throw new BusinessException("无可用容器码"); throw new BusinessException("无可用容器码");

View File

@ -58,8 +58,8 @@ public class DefaultTaskIssuedManager extends DefaultBaseManager implements Task
PickTicket pt=commonDao.load(PickTicket.class, pid); PickTicket pt=commonDao.load(PickTicket.class, pid);
if(pt!=null) { if(pt!=null) {
BillType bt=commonDao.load(BillType.class, pt.getBillType().getId()); BillType bt=commonDao.load(BillType.class, pt.getBillType().getId());
if(bt.getCode().equals("GPUTPTC")) { if(pt!=null&&pt.getCode().indexOf("CP")==-1&&bt.getCode().equals("GPUTPTC")) {
List<Task> Tasks = commonDao.findByQuery(" from Task t where t.waveDocDetail.id is not null and" List<Task> Tasks = commonDao.findByQuery(" from Task t where t.planQuantity>0 and "
+ " t.statusCode=0 and t.pickTicketDetail.pickTicket.id=" + pid + " "); + " t.statusCode=0 and t.pickTicketDetail.pickTicket.id=" + pid + " ");
if(Tasks.size()>0) { if(Tasks.size()>0) {
interfaceReqManager.wmsSapZhuantaihuichuang(Tasks, 0,"",1); interfaceReqManager.wmsSapZhuantaihuichuang(Tasks, 0,"",1);

View File

@ -849,6 +849,10 @@ public class ASNReceiveServlet extends HttpServlet {
try { try {
if (userId > 0) { if (userId > 0) {
if (warehouseId > 0) { if (warehouseId > 0) {
if(specs<=0||weight<=0||length<=0||width<=0||weight<=0||height<=0) {
status = "2";
msg = "规格、长宽高、重量需大于0!";
}else {
ASNDetail ad=commonDao.load(ASNDetail.class, asnDetailId); ASNDetail ad=commonDao.load(ASNDetail.class, asnDetailId);
Item item=commonDao.load(Item.class, ad.getItem().getId()); Item item=commonDao.load(Item.class, ad.getItem().getId());
item.setWeight(weight); item.setWeight(weight);
@ -879,11 +883,8 @@ public class ASNReceiveServlet extends HttpServlet {
item.setWidth(width1); item.setWidth(width1);
item.setHeight(height1); item.setHeight(height1);
// item.setLength(length/100);
item.setCAcoefficient(specs); item.setCAcoefficient(specs);
item.setPackNumber((int)Math.abs(specs)); item.setPackNumber((int)Math.abs(specs));
// item.setWidth(width);
// item.setHeight(height);
item.setVolume(width1*height1*length1); item.setVolume(width1*height1*length1);
item.setBalanceNumber(1); item.setBalanceNumber(1);
item.setWarehouseArea(commonDao.load(WarehouseArea.class, z_id)); item.setWarehouseArea(commonDao.load(WarehouseArea.class, z_id));
@ -904,6 +905,7 @@ public class ASNReceiveServlet extends HttpServlet {
pickTicketManager.huichuanItems(list1); pickTicketManager.huichuanItems(list1);
status="1"; status="1";
msg="保存成功!"; msg="保存成功!";
}
} else { } else {
status = "2"; status = "2";
msg = "无仓库信息!"; msg = "无仓库信息!";

View File

@ -588,9 +588,14 @@ public class PickingServlet extends HttpServlet {
if (userId > 0) { if (userId > 0) {
if (warehouseId > 0) { if (warehouseId > 0) {
PickTicketManager pickTicketManager = (PickTicketManager) ac.getBean("pickTicketManager"); PickTicketManager pickTicketManager = (PickTicketManager) ac.getBean("pickTicketManager");
pickTicketManager.shiftComplete(taskids,sid,lcId, userId); if(sid>0&&lcId>0) {
msg = "移动成功"; pickTicketManager.shiftComplete(taskids,sid,lcId, userId);
status = "1"; msg = "移动成功";
status = "1";
}else {
msg = "扫描库位";
}
} else { } else {
msg = "无仓库信息!"; msg = "无仓库信息!";
} }

View File

@ -116,6 +116,7 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
} else if(value instanceof java.sql.Date) { } else if(value instanceof java.sql.Date) {
data=dateFormatter.format(value); data=dateFormatter.format(value);
data=data.trim();
} else if(value instanceof Timestamp) { } else if(value instanceof Timestamp) {
if(property.getTitle().indexOf("日期")!=-1){ if(property.getTitle().indexOf("日期")!=-1){
@ -123,6 +124,7 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
}else{ }else{
data="\t"+datetimehoursFormatter.format(value)+"\t"; data="\t"+datetimehoursFormatter.format(value)+"\t";
} }
data=data.trim();
} else { } else {
if(property.getFormat() != null && property.getFormat().length() > 0) { if(property.getFormat() != null && property.getFormat().length() > 0) {
Formatter formatter = (Formatter)ac.getBean(property.getFormat()); Formatter formatter = (Formatter)ac.getBean(property.getFormat());
@ -133,10 +135,11 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
}catch(Exception e) { }catch(Exception e) {
data=value.toString(); data=value.toString();
} }
if(data.indexOf(",")>-1){ if(data.indexOf(",")>-1){
data="\""+data.replace("\"", "\"\"")+"\""; data="\""+data.replace("\"", "\"\"")+"\"";
} }
data=data.replaceAll("\r\n", "")+"\t";
} }
} else { } else {
data=""; data="";
@ -144,7 +147,7 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
} }
return data.trim(); return data;
} }
public void delFile(String filePath){ public void delFile(String filePath){

View File

@ -99,7 +99,7 @@ public class lptQuickPickServlet extends HttpServlet{
String startSlotCode=jobData.has("startSlotCode")?jobData.getString("startSlotCode"):"";//起点 String startSlotCode=jobData.has("startSlotCode")?jobData.getString("startSlotCode"):"";//起点
String agvCode=jobData.getString("agvCode");//AGV编号 String agvCode=jobData.getString("agvCode");//AGV编号
// WcsCSDCode.setWmsjbkCode1(startSlotCode, true); // WcsCSDCode.setWmsjbkCode1(startSlotCode, true);
//更新AGV任务作业模式 //更新AGV任务作业模式给WCS下发取料完成信号
agvTaskManager.editAgvTaskAndJobReportEvent("LOAD_COMPLETED",robotJobId,containerCode,startSlotCode,agvCode); agvTaskManager.editAgvTaskAndJobReportEvent("LOAD_COMPLETED",robotJobId,containerCode,startSlotCode,agvCode);
}else }else
if (state.equals("MOVE_BEGIN")) { if (state.equals("MOVE_BEGIN")) {
@ -137,7 +137,7 @@ public class lptQuickPickServlet extends HttpServlet{
String startSlotCode=jobData.has("startSlotCode")?jobData.getString("startSlotCode"):"";//起点 String startSlotCode=jobData.has("startSlotCode")?jobData.getString("startSlotCode"):"";//起点
String agvCode=jobData.getString("agvCode");//AGV编号 String agvCode=jobData.getString("agvCode");//AGV编号
// WcsCSDCode.setWmsjbkCode1(startSlotCode, true); // WcsCSDCode.setWmsjbkCode1(startSlotCode, true);
//更新AGV任务作业模式 //更新AGV任务作业模式/给WCS下发取料完成信号
agvTaskManager.editAgvTaskAndJobReportEvent("LOAD_COMPLETED",robotJobId,containerCode,endSlotCode,agvCode); agvTaskManager.editAgvTaskAndJobReportEvent("LOAD_COMPLETED",robotJobId,containerCode,endSlotCode,agvCode);
}else }else
//料箱到达库位点 //料箱到达库位点

View File

@ -41,10 +41,17 @@
<booleanList id="item.singleItem" title="是否批次" row="17" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/> <booleanList id="item.singleItem" title="是否批次" row="17" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
<booleanList id="item.beWeight" title="是否危化品" row="18" col="1" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/> <booleanList id="item.beWeight" title="是否危化品" row="18" col="1" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
<booleanList id="item.beMarkWeight" title="是否序列号" row="18" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/> <booleanList id="item.beMarkWeight" title="是否序列号" row="18" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
<booleanList id="strExtend1" title="图片" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/> <booleanList id="strExtend1" title="图片" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
<booleanList id="item.beUnpacking" title="是否一包一个" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/> <booleanList id="item.beUnpacking" title="是否包装更新" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
<list id="item.smallUnit" title="包装" row="21" col="1" span="1" width="120" readOnly="false" required="false" reserve="false" forceOverride="true">
<hql><![CDATA[select
commonCode.code,
commonCode.name
from CommonCode commonCode
where 1=1
and commonCode.codeType='包装'
and commonCode.disabled=false]]></hql>
</list>
</inputUIs> </inputUIs>
</search> </search>
<datasource type="hql"><![CDATA[ select <datasource type="hql"><![CDATA[ select
@ -54,10 +61,10 @@
item.CAname, item.CAname,
item.packNumber, item.packNumber,
cast(item.weight as string), cast(item.weight as string),
item.suggest, cast(item.suggest as string),
item.length, cast(item.length as string),
item.width, cast(item.width as string),
item.height, cast(item.height as string),
cast(item.volume as string), cast(item.volume as string),
item.unit, item.unit,
item.warehouseArea.name, item.warehouseArea.name,
@ -85,6 +92,7 @@
where 1=1 where 1=1
/~item.code: and item.code like {item.code} ~/ /~item.code: and item.code like {item.code} ~/
/~item.warehouseArea.id: and item.warehouseArea.id = {item.warehouseArea.id} ~/ /~item.warehouseArea.id: and item.warehouseArea.id = {item.warehouseArea.id} ~/
/~item.smallUnit: and item.smallUnit like {item.smallUnit} ~/
/~item.name: and item.name like {item.name} ~/ /~item.name: and item.name like {item.name} ~/
/~item.saleTime1: and item.saleTime >= {item.saleTime1} ~/ /~item.saleTime1: and item.saleTime >= {item.saleTime1} ~/
/~item.saleTime2: and item.saleTime <= {item.saleTime2} ~/ /~item.saleTime2: and item.saleTime <= {item.saleTime2} ~/
@ -144,9 +152,9 @@
horizonAlign="center" format="booleanFormat"/> horizonAlign="center" format="booleanFormat"/>
<column id="item.brand" title="批次规则" visible="true" <column id="item.brand" title="批次规则" visible="true"
horizonAlign="center" /> horizonAlign="center" />
<column id="item.beUnpacking" title="是否一包一个" visible="true" <column id="item.beUnpacking" title="是否包装更新" visible="true"
horizonAlign="center" format="booleanFormat"/> horizonAlign="center" format="booleanFormat"/>
<column id="item.smallUnit" title="一包一个" visible="true" <column id="item.smallUnit" title="包装" visible="true"
horizonAlign="center" /> horizonAlign="center" />
<column id="item.beMarkWeight" title="是否序列号" visible="true" <column id="item.beMarkWeight" title="是否序列号" visible="true"
horizonAlign="center" format="booleanFormat"/> horizonAlign="center" format="booleanFormat"/>

View File

@ -44,6 +44,7 @@
pickTicket.orderDate, pickTicket.orderDate,
pickTicket.orderDate, pickTicket.orderDate,
pickTicket.relatedBill1, pickTicket.relatedBill1,
pickTicket.relatedBill2,
pickTicket.workerName1, pickTicket.workerName1,
pickTicket.workerName4, pickTicket.workerName4,
pickTicket.shipToName, pickTicket.shipToName,
@ -82,6 +83,8 @@
visible="true" horizonAlign="center" format="dateTiemFormatter"/> visible="true" horizonAlign="center" format="dateTiemFormatter"/>
<column id="pickTicket.relatedBill1" width="130" title="申请编号" <column id="pickTicket.relatedBill1" width="130" title="申请编号"
visible="true" horizonAlign="center" dataType="enum" /> visible="true" horizonAlign="center" dataType="enum" />
<column id="pickTicket.relatedBill2" width="130" title="流程编号"
visible="true" horizonAlign="center" dataType="enum" />
<column id="pickTicket.workerName1" width="101" title="工厂" <column id="pickTicket.workerName1" width="101" title="工厂"
visible="true" horizonAlign="center" dataType="enum" /> visible="true" horizonAlign="center" dataType="enum" />
<column id="pickTicket.workerName4" width="130" title="申请人" <column id="pickTicket.workerName4" width="130" title="申请人"

View File

@ -175,9 +175,9 @@
pickTicket.equatedQuantity, pickTicket.equatedQuantity,
t.barCode, t.barCode,
t.inventoryStatus, t.inventoryStatus,
t.strBill10,
pickTicketDetail.lineNumber, pickTicketDetail.lineNumber,
t.beUnpacking, t.smallUnit,
pickTicket.updateTime, pickTicket.updateTime,
pickTicket.updateTime, pickTicket.updateTime,
t.strBill1, t.strBill1,
@ -319,9 +319,9 @@
<column id="pickTicket.equatedQuantity" title="加急标记" visible="true" horizonAlign="center" /> <column id="pickTicket.equatedQuantity" title="加急标记" visible="true" horizonAlign="center" />
<column id="t.barCode" title="序列号" visible="true" horizonAlign="center" /> <column id="t.barCode" title="序列号" visible="true" horizonAlign="center" />
<column id="t.inventoryStatus" title="库存状态" visible="true" horizonAlign="center" /> <column id="t.inventoryStatus" title="库存状态" visible="true" horizonAlign="center" />
<column id="t.strBill10" title="退料标记" visible="true" horizonAlign="center" />
<column id="pickTicketDetail.lineNumber" title="项号" visible="true" horizonAlign="center" /> <column id="pickTicketDetail.lineNumber" title="项号" visible="true" horizonAlign="center" />
<column id="t.beUnpacking" title="是否一包一个" visible="true" <column id="t.smallUnit" title="包装" visible="true" horizonAlign="center" />
horizonAlign="center" format="booleanFormat"/>
<column id="pickTicket.updateTime1" title="创建日期" visible="true" <column id="pickTicket.updateTime1" title="创建日期" visible="true"
horizonAlign="center" format="dateFormatter" /> horizonAlign="center" format="dateFormatter" />
<column id="pickTicket.updateTime2" title="创建时间" visible="true" <column id="pickTicket.updateTime2" title="创建时间" visible="true"