diff --git a/src/main/java/com/dev/swms/server/service/picking/allocate/DefaultNewAutoAllocator.java b/src/main/java/com/dev/swms/server/service/picking/allocate/DefaultNewAutoAllocator.java index be7f4b8..e4f8a52 100644 --- a/src/main/java/com/dev/swms/server/service/picking/allocate/DefaultNewAutoAllocator.java +++ b/src/main/java/com/dev/swms/server/service/picking/allocate/DefaultNewAutoAllocator.java @@ -357,7 +357,7 @@ public class DefaultNewAutoAllocator extends DefaultBaseManager implements NewAu Task task = EntityFactory.getEntity(Task.class); task.setPickTicketDetail(ptd); Item item=commonDao.load(Item.class, ptd.getItem().getId()); - task.setBillCode(getSubWorkOrer(ptd.getPickTicket().getCode(),inventory.getLocation().getZone(),item)); + /*task.setBillCode(getSubWorkOrer(ptd.getPickTicket().getCode(),inventory.getLocation().getZone(),item)); //单个子任务数量 if(qty>0) { List tas=commonDao.findByQuery("select t.hs from PickTicketTaskView t where t.pickTicket.id="+ptd.getPickTicket().getId() @@ -368,10 +368,11 @@ public class DefaultNewAutoAllocator extends DefaultBaseManager implements NewAu task.setBillCode(bussinessCodeManager.getCodeForYmd(ptd.getPickTicket().getCode()+"-", 2)); } } - } + }*/ if (inventory.getLocation().getStock()!=null) { task.setStrBill7(inventory.getLocation().getStock().getLP()); } + task.setBillCode(pt.getRelatedBill2()); String tItemCode=item.getCode().substring(0, 9); String ptCode = ptd.getPickTicket().getCode(); char lastChar = ptCode.charAt(ptCode.length() - 1); diff --git a/src/main/java/com/dev/swms/server/service/shipping/pojo/DefaultNewWaveDocManager.java b/src/main/java/com/dev/swms/server/service/shipping/pojo/DefaultNewWaveDocManager.java index 8a3ae5a..058e6cb 100644 --- a/src/main/java/com/dev/swms/server/service/shipping/pojo/DefaultNewWaveDocManager.java +++ b/src/main/java/com/dev/swms/server/service/shipping/pojo/DefaultNewWaveDocManager.java @@ -21,6 +21,7 @@ import com.dev.swms.server.model.inventory.Task; import com.dev.swms.server.model.inventory.TaskType; import com.dev.swms.server.model.shipping.PickTicketDetail; import com.dev.swms.server.model.shipping.WaveDoc; +import com.dev.swms.server.model.shipping.WaveDocSort; import com.dev.swms.server.service.base.ItemManager; import com.dev.swms.server.service.interfaceLog.JdbcManager; import com.dev.swms.server.service.inventory.InventoryManager; @@ -53,6 +54,7 @@ public class DefaultNewWaveDocManager extends DefaultBaseManager implements this.bussinessCodeManager = bussinessCodeManager; this.jdbcManager = jdbcManager; } + @Override public void hotWaveDoc(Date date1,Date date2 ,Integer longtiem,Integer lxqQty,Integer hjqQty,Integer lkqQty,boolean ddq,String pickCode ,boolean ddq1,boolean ddq2,boolean ddq3,boolean ddq4,boolean ddq5,boolean ddq6,boolean ddq7,boolean ddq8,boolean ddq9,Integer taskQty,boolean beUrgent) { @@ -63,12 +65,25 @@ public class DefaultNewWaveDocManager extends DefaultBaseManager implements /*if(!hotWave&&date.getTime()-hotWaveDate.getTime()<1200000) { throw new BusinessException("其它人正在创建波次,请稍后"); }*/ + List waveDocSortList = commonDao.findByQuery("select wds from WaveDocSort wds where wds.disabled=0 order by wds.sort asc"); + /*波次排序规则*/ + String sqlSort=""; + for (WaveDocSort waveDocSort : waveDocSortList) { + if (sqlSort.length()>1) { + sqlSort=sqlSort+","; + }else { + sqlSort=" order by"; +// + " order by ptd.SOI desc,ptd.pickTicket.orderDate, ptd.pickTicket.code ,ptd.item.code " + + } + sqlSort=sqlSort+" ptd."+waveDocSort.getColume()+" "; + } hotWave=false; List PickTicketDetailIds=null; List taskids=new ArrayList(); - List lxtaskids=new ArrayList();//料箱区任务 + List lxtaskids=new ArrayList();//料区任务 List hjtaskids=new ArrayList();//货架区任务 - List lktaskids=new ArrayList();//立库区任务 + List lktaskids=new ArrayList();//立箱库区任务 //库存料号id String hqlinv1="select i.itemKey.item.id from Inventory i where i.location.type='存货' " + " and i.status='已入库' and i.quantity-i.queuedQuantity>0 and i.counPlan is null " @@ -137,7 +152,9 @@ public class DefaultNewWaveDocManager extends DefaultBaseManager implements + " and (ptd.waveDoc.id is null ) " + " and ptd.pickTicket.status ='OPEN' " //,'PICKUP','CHECK' + " and ptd.item.id in("+hqlinv1+") " - + " order by ptd.SOI desc,ptd.pickTicket.orderDate, ptd.pickTicket.code ,ptd.item.code "; + + sqlSort +// + " order by ptd.SOI desc,ptd.pickTicket.orderDate, ptd.pickTicket.code ,ptd.item.code " + ; PickTicketDetailIds = commonDao.findByQuery(sql2); } @@ -187,7 +204,9 @@ public class DefaultNewWaveDocManager extends DefaultBaseManager implements + " and ptd.newLotInfo.propC2 not in("+hqlmave+")" + " and ptd.pickTicket.status ='OPEN' " + " and ptd.item.id in("+hqlinv1+") " - + " order by ptd.SOI desc,ptd.pickTicket.orderDate, ptd.pickTicket.code,ptd.item.code "; + + sqlSort +// + " order by ptd.SOI desc,ptd.pickTicket.orderDate, ptd.pickTicket.code,ptd.item.code " + ; List pdisd= commonDao.findByQuery(hql2); boolean bd=true;//是否满足波次行数 // logger.info("4---"+new Date());