|  | @ -218,56 +218,72 @@ public class IotDeviceService extends BaseJpaService<IotDeviceDO,IotDeviceDao> {
 | 
												
													
														
															|  |      * @return
 |  |      * @return
 | 
												
													
														
															|  |      */
 |  |      */
 | 
												
													
														
															|  |     public MixEnvelop<IotDeviceVO, IotDeviceVO> queryPage(String sn, String hospital, String hospitalName,String orderId, String purcharseId, String productId, String name, String categoryCode, String manufacturerId, Integer page, Integer size) throws Exception{
 |  |     public MixEnvelop<IotDeviceVO, IotDeviceVO> queryPage(String sn, String hospital, String hospitalName,String orderId, String purcharseId, String productId, String name, String categoryCode, String manufacturerId, Integer page, Integer size) throws Exception{
 | 
												
													
														
															|  |         String filters = "del=1;";
 |  | 
 | 
												
													
														
															|  |         String semicolon = "";
 |  | 
 | 
												
													
														
															|  | 
 |  |         StringBuffer sql = new StringBuffer("SELECT DISTINCT c.* from iot_device c  WHERE c.del=1 ");
 | 
												
													
														
															|  | 
 |  |         StringBuffer sqlCount = new StringBuffer("SELECT COUNT(DISTINCT c.id) count from iot_device c  WHERE c.del=1 ");
 | 
												
													
														
															|  | 
 |  |         List<Object> args = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(orderId)){
 |  |         if(StringUtils.isNotBlank(orderId)){
 | 
												
													
														
															|  |             filters += semicolon +"orderId="+orderId;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.order_id = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.order_id = '").append(orderId).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(orderId);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(purcharseId)){
 |  |         if(StringUtils.isNotBlank(purcharseId)){
 | 
												
													
														
															|  |             filters += semicolon +"purchaseId="+purcharseId;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.purchase_id = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.purchase_id = '").append(purcharseId).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(purcharseId);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(hospital)){
 |  |         if(StringUtils.isNotBlank(hospital)){
 | 
												
													
														
															|  |             filters += semicolon +"hospital="+hospital;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.hospital = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.hospital = '").append(hospital).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(hospital);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(sn)){
 |  |         if(StringUtils.isNotBlank(sn)){
 | 
												
													
														
															|  |             filters += semicolon + "deviceSn?"+sn+" g1;simNo?" + sn + " g1";
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sn = "%"+sn+"%";
 | 
												
													
														
															|  | 
 |  |             sql.append(" and (c.device_sn like ? or c.sim_no like ?)");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and (c.device_sn like '").append(sn).append("' or c.sim_no like '").append(sn).append("')");
 | 
												
													
														
															|  | 
 |  |             args.add(sn);
 | 
												
													
														
															|  | 
 |  |             args.add(sn);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(productId)){
 |  |         if(StringUtils.isNotBlank(productId)){
 | 
												
													
														
															|  |             filters += semicolon +"productId="+productId;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.product_id = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.product_id = '").append(productId).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(productId);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(name)){
 |  |         if(StringUtils.isNotBlank(name)){
 | 
												
													
														
															|  |             filters += semicolon + "name?"+name+"";
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             name = "%"+name+"%";
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.name like ?");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.name like '").append(name).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(name);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(categoryCode)){
 |  |         if(StringUtils.isNotBlank(categoryCode)){
 | 
												
													
														
															|  |             filters += semicolon +"categoryCode="+categoryCode;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.category_code = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.category_code = '").append(categoryCode).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(categoryCode);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(manufacturerId)){
 |  |         if(StringUtils.isNotBlank(manufacturerId)){
 | 
												
													
														
															|  |             filters += semicolon +"manufacturerId="+manufacturerId;
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.manufacturer_id = ? ");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.manufacturer_id = '").append(manufacturerId).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(manufacturerId);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  |         if(StringUtils.isNotBlank(hospitalName)){
 |  |         if(StringUtils.isNotBlank(hospitalName)){
 | 
												
													
														
															|  |             filters += semicolon + "hospitalName?"+hospitalName+"";
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             hospitalName = "%"+hospitalName+"%";
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.hospital_name like ?");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.hospital_name like '").append(hospitalName).append("'");
 | 
												
													
														
															|  | 
 |  |             args.add(hospitalName);
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //数据权限过滤
 |  |         //数据权限过滤
 | 
												
													
														
															|  |         List<String> orgList = orgUserService.getUserOrgById(userAgent.getUID());
 |  |         List<String> orgList = orgUserService.getUserOrgById(userAgent.getUID());
 | 
												
													
														
															|  |         if(!orgList.contains(userAgent.commonHospital)){
 |  |         if(!orgList.contains(userAgent.commonHospital)){
 | 
												
													
														
															|  |             filters +=  semicolon +" hospital ="+orgUserService.getUserOrg2(orgList);
 |  | 
 | 
												
													
														
															|  |             semicolon = ";";
 |  | 
 | 
												
													
														
															|  | 
 |  |             sql.append(" and c.hospital in (").append(orgUserService.getUserOrg(orgList)).append(")");
 | 
												
													
														
															|  | 
 |  |             sqlCount.append(" and c.hospital in (").append(orgUserService.getUserOrg(orgList)).append(")");
 | 
												
													
														
															|  |         }
 |  |         }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         String sorts = "-updateTime";
 |  | 
 | 
												
													
														
															|  |         //得到list数据
 |  | 
 | 
												
													
														
															|  |         List<IotDeviceDO> list = search(null, filters, sorts, page, size);
 |  | 
 | 
												
													
														
															|  |         //获取总数
 |  | 
 | 
												
													
														
															|  |         long count = getCount(filters);
 |  | 
 | 
												
													
														
															|  | 
 |  |         sql.append("order by c.update_time desc limit ").append((page-1)*size).append(",").append(size);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |         List<IotDeviceDO> list = jdbcTempalte.query(sql.toString(),args.toArray(),new BeanPropertyRowMapper(IotDeviceDO.class));
 | 
												
													
														
															|  | 
 |  |         List<Map<String,Object>> countList = jdbcTempalte.queryForList(sqlCount.toString());
 | 
												
													
														
															|  | 
 |  |         long count = Long.valueOf(countList.get(0).get("count").toString());
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |         //DO转VO
 |  |         //DO转VO
 | 
												
													
														
															|  |         List<IotDeviceVO> iotDeviceVOList = convertToModels(list,new ArrayList<>(list.size()),IotDeviceVO.class);
 |  |         List<IotDeviceVO> iotDeviceVOList = convertToModels(list,new ArrayList<>(list.size()),IotDeviceVO.class);
 |