| | |
| | | } |
| | | |
| | | /** |
| | | * 设备台账导出 |
| | | * @param eamEquipment |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<EamEquipment> exportList(EamEquipmentQuery eamEquipment){ |
| | | QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("e.del_flag", CommonConstant.DEL_FLAG_0); |
| | | //用户数据权限 |
| | | LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | if (sysUser == null) { |
| | | return new ArrayList<>(); |
| | | } |
| | | if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) { |
| | | //选择了设备,根据设备id过滤设备 |
| | | List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(",")); |
| | | queryWrapper.in("e.equipment_code", equipArr); |
| | | } else { |
| | | //没有选择设备,根据中心过滤设备 |
| | | List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService. |
| | | list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId())); |
| | | if(!CollectionUtils.isEmpty(baseFactoryUserList)){ |
| | | List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList()); |
| | | List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList()); |
| | | queryWrapper.in("e.factory_code", factoryCode); |
| | | } |
| | | |
| | | } |
| | | //查询条件过滤 |
| | | if (eamEquipment != null) { |
| | | if (StringUtils.isNotBlank(eamEquipment.getEquipmentCode())) { |
| | | queryWrapper.like("e.equipment_code", eamEquipment.getEquipmentCode()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getEquipmentName())) { |
| | | queryWrapper.like("e.equipment_name", eamEquipment.getEquipmentName()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getEquipmentImportance())) { |
| | | queryWrapper.eq("e.equipment_importance", eamEquipment.getEquipmentImportance()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getAssetStatus())) { |
| | | queryWrapper.like("e.asset_status", eamEquipment.getAssetStatus()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getTechnologyStatus())) { |
| | | queryWrapper.like("e.technology_status", eamEquipment.getTechnologyStatus()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getOperationSystem())) { |
| | | queryWrapper.like("e.operation_system", eamEquipment.getOperationSystem()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getOrgId())) { |
| | | //车间编码不为空 |
| | | List<String> productIds = mdcProductionService.recursionChildren(eamEquipment.getOrgId()); |
| | | if (CollectionUtil.isNotEmpty(productIds)) { |
| | | //不做筛选 |
| | | queryWrapper.in("e.org_id", productIds); |
| | | } |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getEquipmentCategory())) { |
| | | queryWrapper.like("e.equipment_category", eamEquipment.getEquipmentCategory()); |
| | | } |
| | | if (StringUtils.isNotBlank(eamEquipment.getId())) { |
| | | queryWrapper.eq("e.id", eamEquipment.getId()); |
| | | } |
| | | //排序 |
| | | if (StringUtils.isNotBlank(eamEquipment.getColumn()) && StringUtils.isNotBlank(eamEquipment.getOrder())) { |
| | | //queryWrapper.like("column", eamEquipment.getColumn()); |
| | | String column = eamEquipment.getColumn(); |
| | | if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) { |
| | | column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX)); |
| | | } |
| | | if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(eamEquipment.getOrder())) { |
| | | queryWrapper.orderByAsc("e." + oConvertUtils.camelToUnderline(column)); |
| | | } else { |
| | | queryWrapper.orderByDesc("e." + oConvertUtils.camelToUnderline(column)); |
| | | } |
| | | } else { |
| | | queryWrapper.orderByDesc("e.create_time"); |
| | | } |
| | | } else { |
| | | queryWrapper.orderByDesc("e.create_time"); |
| | | } |
| | | return eamEquipmentMapper.queryList(queryWrapper); |
| | | } |
| | | |
| | | /** |
| | | * 获取所有的产线id(包含所有上级) |
| | | */ |
| | | private void getAllProductionIds(List<MdcProduction> productionList, String productionId, List<String> allProductionIds) { |