Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java =================================================================== diff -u -r33471 -r33483 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java (.../PackingAction.java) (revision 33471) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java (.../PackingAction.java) (revision 33483) @@ -757,10 +757,31 @@ // 获取待装配任务,装配界面左下角grid调用 public void loadWaitPackingTaskJson(){ String taskGroup = StrutsParamUtils.getPraramValue("taskGroup", null); - int pageIndex = StrutsParamUtils.getPraramValue("pageIndex", 0); - int pageSize = StrutsParamUtils.getPraramValue("pageSize", 0); + int pageIndex = StrutsParamUtils.getPraramValue("pageIndex", 1); + int pageSize = StrutsParamUtils.getPraramValue("pageSize", 20); StrutsResponseUtils.output(packingManager.getWaitPackingTaskJson(taskGroup,pageIndex,pageSize)); } + //获取待装配任务页码信息 + public void loadWaitPackingTaskPageJson(){ + JSONObject obj = new JSONObject(); + try { + String taskGroup = StrutsParamUtils.getPraramValue("taskGroup", null); + int totalCount = packingManager.getPackingTaskTousseNameCount(taskGroup); + int pageSize = StrutsParamUtils.getPraramValue("pageSize", 20); + int pageNo = 0; + if(totalCount > 0){ + pageNo = (totalCount + pageSize - 1) / pageSize; + } + obj.put("totalPage", pageNo); + obj.put("totalCount", totalCount); + JSONUtil.addSuccess(obj, true); + } catch (Exception e) { + e.printStackTrace(); + JSONUtil.addSuccess(obj, false); + obj.put("message", e.getMessage()); + } + StrutsResponseUtils.output(obj); + } // 扫描清洗篮筐获取装配任务 public void loadPackingTaskByBasketBarCode(){ String basketBarcode = StrutsParamUtils.getPraramValue("basketBarcode", null); Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r33430 -r33483 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 33430) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 33483) @@ -1469,7 +1469,7 @@ //按包名称分页,不按装配任务条数分页,先查询本页的包名称,再去查询这些包的所有装配任务 Set queryTousseNames = null; if(pageSize != null && pageIndex != null && pageIndex > 0 && pageSize > 0){ - queryTousseNames = getTousseIdsOfPackingTask(basketBarcode, pageIndex, pageSize); + queryTousseNames = getTousseIdsOfPackingTask(taskGroup, basketBarcode, pageIndex, pageSize); } boolean allowForeignToussePartiallyPacking = CssdUtils.getSystemSetConfigByNameBool("allowForeignToussePartiallyPacking"); @@ -1926,10 +1926,11 @@ * @param pageSize * @return */ - public Set getTousseIdsOfPackingTask(String basketBarcode, int pageIndex, int pageSize){ - List list = objectDao.findByHql(String.format("select distinct po.tousseDefinition.name from %s po %s order by po.tousseDefinition.name desc" + public Set getTousseIdsOfPackingTask(String taskGroup, String basketBarcode, int pageIndex, int pageSize){ + List list = objectDao.findByHql(String.format("select po.tousseDefinition.name from %s po left join po.urgentLevelObj where 1=1 %s %s group by po.tousseDefinition.name order by max(po.urgentLevelObj.grade) desc, po.tousseDefinition.name desc " , PackingTask.class.getSimpleName() - ,StringUtils.isBlank(basketBarcode)?"":" where po.basketBarcode like '%" + basketBarcode + "%' ") + ,StringUtils.isBlank(basketBarcode)?"":" and po.basketBarcode like '%" + basketBarcode + "%' " + ,StringUtils.isBlank(taskGroup)?"":" and po.tousseDefinition.ancestorID in (select id from TousseDefinition where forDisplay=1 and taskGroup='"+ taskGroup +"') ") , (pageIndex - 1) * pageSize, pageSize); if(CollectionUtils.isEmpty(list)){ return null; @@ -1940,6 +1941,17 @@ } return tdNames; } + @Override + public int getPackingTaskTousseNameCount(String taskGroup){ + String sql = "select count(distinct td.name) from PackingTask po " + + " join TousseDefinition td on td.id=po.tousseDefinition_id " + + " join TousseDefinition tdc on tdc.id=td.ancestorID " + + " where tdc.forDisplay=1 "; + if(StringUtils.isNotBlank(taskGroup)){ + sql += " and tdc.taskGroup='"+ taskGroup +"'"; + } + return objectDao.countBySql(sql); + } /** * 收集装配任务的信息,统一查询篮筐和申请单 * @param taskList 装配任务 Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java =================================================================== diff -u -r32795 -r33483 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java (.../PackingManager.java) (revision 32795) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java (.../PackingManager.java) (revision 33483) @@ -352,4 +352,10 @@ * @return */ public Map queryPackingRecordVos(Set packingRecordIds); + /** + * 获取装配任务文件夹 + * @param taskGroup 任务组 + * @return + */ + public int getPackingTaskTousseNameCount(String taskGroup); }