| | |
| | | package com.qianwen.smartman.modules.visual.service.impl; |
| | | |
| | | import cn.hutool.core.util.ZipUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.IdWorker; |
| | | import com.google.common.collect.Lists; |
| | | import java.io.File; |
| | | import java.io.FileInputStream; |
| | | import java.lang.invoke.SerializedLambda; |
| | | import java.io.FileNotFoundException; |
| | | import java.util.HashSet; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | import java.util.Set; |
| | | import java.util.stream.Collectors; |
| | | import java.util.stream.Stream; |
| | | |
| | | import org.apache.commons.io.FileUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import com.qianwen.smartman.common.utils.Lambda; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.IdWorker; |
| | | import com.google.common.collect.Lists; |
| | | import com.qianwen.core.log.exception.ServiceException; |
| | | import com.qianwen.core.mp.base.BaseServiceImpl; |
| | | import com.qianwen.core.oss.model.BladeFile; |
| | | import com.qianwen.core.tool.utils.Func; |
| | | import com.qianwen.core.tool.utils.SpringUtil; |
| | | import com.qianwen.smartman.common.utils.Lambda; |
| | | import com.qianwen.smartman.modules.resource.builder.oss.OssBuilder; |
| | | import com.qianwen.smartman.modules.visual.convert.VisualCompConvert; |
| | | import com.qianwen.smartman.modules.visual.dto.VisualCompCreatedDTO; |
| | |
| | | import com.qianwen.smartman.modules.visual.service.IVisualCompTypeService; |
| | | import com.qianwen.smartman.modules.visual.utils.VisualUtils; |
| | | import com.qianwen.smartman.modules.visual.vo.VisualCompVO; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import cn.hutool.core.util.ZipUtil; |
| | | |
| | | @Service |
| | | /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/visual/service/impl/VisualCompServiceImpl.class */ |
| | |
| | | @Lazy |
| | | private IVisualCompTypeService visualCompTypeService; |
| | | |
| | | private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) { |
| | | String implMethodName = lambda.getImplMethodName(); |
| | | boolean z = true; |
| | | switch (implMethodName.hashCode()) { |
| | | case -1041904421: |
| | | if (implMethodName.equals("getParentId")) { |
| | | z = true; |
| | | break; |
| | | } |
| | | break; |
| | | case -75308287: |
| | | if (implMethodName.equals("getName")) { |
| | | z = false; |
| | | break; |
| | | } |
| | | break; |
| | | case -75106384: |
| | | if (implMethodName.equals("getType")) { |
| | | z = true; |
| | | break; |
| | | } |
| | | break; |
| | | case 98245393: |
| | | if (implMethodName.equals("getId")) { |
| | | z = true; |
| | | break; |
| | | } |
| | | break; |
| | | } |
| | | switch (z) { |
| | | case false: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualComp") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { |
| | | return (v0) -> { |
| | | return v0.getName(); |
| | | }; |
| | | } |
| | | break; |
| | | case true: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualCompType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { |
| | | return (v0) -> { |
| | | return v0.getType(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualCompType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { |
| | | return (v0) -> { |
| | | return v0.getType(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualComp") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { |
| | | return (v0) -> { |
| | | return v0.getType(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualCompType") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { |
| | | return (v0) -> { |
| | | return v0.getType(); |
| | | }; |
| | | } |
| | | break; |
| | | case true: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/mp/base/BaseEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) { |
| | | return (v0) -> { |
| | | return v0.getId(); |
| | | }; |
| | | } |
| | | break; |
| | | case true: |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualCompType") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) { |
| | | return (v0) -> { |
| | | return v0.getParentId(); |
| | | }; |
| | | } |
| | | if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/visual/entity/VisualCompType") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) { |
| | | return (v0) -> { |
| | | return v0.getParentId(); |
| | | }; |
| | | } |
| | | break; |
| | | } |
| | | throw new IllegalArgumentException("Invalid lambda deserialization"); |
| | | } |
| | | |
| | | @Override // org.springblade.modules.visual.service.IVisualCompService |
| | | public IPage<VisualCompVO> pageVO(IPage<VisualComp> page, Map<String, Object> map) { |
| | |
| | | VisualCompType type = (VisualCompType) this.visualCompTypeService.getOne(Lambda.eq((v0) -> { |
| | | return v0.getType(); |
| | | }, typeStr)); |
| | | if (type.getParentId().longValue() == 0L) { |
| | | typeList = (List<String>)this.visualCompTypeService.list(Lambda.eq(VisualCompType::getParentId, type.getId()).select(VisualCompType::getType )) |
| | | .stream().map(VisualCompType::getType).collect(Collectors.toList()); |
| | | }else { |
| | | typeList = Lists.newArrayList(new String[] { typeStr }); |
| | | } |
| | | /* |
| | | typeList = type.getParentId().longValue() == 0 ? (List) this.visualCompTypeService.list(Lambda.eq((v0) -> { |
| | | return v0.getParentId(); |
| | | }, type.getId()).select((v0) -> { |
| | | return v0.getType(); |
| | | })).stream().map((v0) -> { |
| | | return v0.getType(); |
| | | }).collect(Collectors.toList()) : Lists.newArrayList(new String[]{typeStr}); |
| | | }).collect(Collectors.toList()) : Lists.newArrayList(new String[]{typeStr});*/ |
| | | } |
| | | IPage<VisualComp> visualCompIPage = page(page, Lambda.like(Func.isNotEmpty(nameStr), VisualComp::getName, nameStr) |
| | | |
| | | .in((typeList != null && !typeList.isEmpty()), VisualComp::getType, typeList)); |
| | | /* |
| | | IPage<VisualComp> visualCompIPage = page(page, Lambda.like(Func.isNotEmpty(nameStr), (v0) -> { |
| | | return v0.getName(); |
| | | }, nameStr).in((typeList == null || typeList.isEmpty()) ? false : true, (v0) -> { |
| | | return v0.getType(); |
| | | }, typeList)); |
| | | }, typeList));*/ |
| | | IPage<VisualCompVO> convert = VisualCompConvert.INSTANCE.convert(visualCompIPage); |
| | | wrapper(convert.getRecords()); |
| | | return convert; |
| | |
| | | |
| | | @Override // org.springblade.modules.visual.service.IVisualCompService |
| | | public BladeFile componentZipDownload(List<Long> componentIds) { |
| | | |
| | | List<String> jsonTexts = list(Lambda.<VisualComp>in((componentIds != null && componentIds.size() != 0), VisualComp::getId, componentIds)) |
| | | .stream().map(VisualCompConvert.INSTANCE::convertDTO).map(JSON::toJSONString).collect(Collectors.toList()); |
| | | File zipFile = VisualUtils.visualDownload(jsonTexts.<String>toArray(new String[0])); |
| | | try { |
| | | return ((OssBuilder)SpringUtil.getBean(OssBuilder.class)).tempTemplate().putFile(zipFile.getName(), new FileInputStream(zipFile)); |
| | | } catch (FileNotFoundException e) { |
| | | log.error("组件下载zip文件错误",e); |
| | | throw new ServiceException("组件下载zip文件错误"+e.getMessage()); |
| | | } |
| | | /* |
| | | boolean z; |
| | | if (componentIds != null) { |
| | | if (componentIds.size() != 0) { |
| | |
| | | }).collect(Collectors.toList()); |
| | | File zipFile2 = VisualUtils.visualDownload((String[]) jsonTexts2.toArray(new String[0])); |
| | | return ((OssBuilder) SpringUtil.getBean(OssBuilder.class)).tempTemplate().putFile(zipFile2.getName(), new FileInputStream(zipFile2)); |
| | | */ |
| | | } |
| | | |
| | | @Override // org.springblade.modules.visual.service.IVisualCompService |
| | |
| | | |
| | | @Transactional |
| | | public void save(String... replaceText) { |
| | | List<VisualComp> compList = Stream.<String>of(replaceText).map(text -> JSONObject.parseObject(text, VisualCompCreatedDTO.class)).map(dto -> { |
| | | VisualCompType type = (VisualCompType)this.visualCompTypeService.getOne(Lambda.eq(VisualCompType::getType, dto.getType())); |
| | | dto.setType((type == null) ? "ungrouped" : type.getType()); |
| | | return dto; |
| | | }).map(VisualCompConvert.INSTANCE::convert).collect(Collectors.toList()); |
| | | /* |
| | | Stream map = Stream.of((Object[]) replaceText).map(text -> { |
| | | return (VisualCompCreatedDTO) JSONObject.parseObject(text, VisualCompCreatedDTO.class); |
| | | }).map(dto -> { |
| | |
| | | }); |
| | | VisualCompConvert visualCompConvert = VisualCompConvert.INSTANCE; |
| | | visualCompConvert.getClass(); |
| | | List<VisualComp> compList = (List) map.map(this::convert).collect(Collectors.toList()); |
| | | List<VisualComp> compList = (List) map.map(this::convert).collect(Collectors.toList());*/ |
| | | visualSaveOrUpdateBatch(compList); |
| | | } |
| | | |
| | | private void visualSaveOrUpdateBatch(List<VisualComp> upList) { |
| | | List<VisualComp> list = list(); |
| | | Map<String, List<VisualComp>> existComp = (Map) list.stream().collect(Collectors.groupingBy(item -> { |
| | | Map<String, List<VisualComp>> existComp = list.stream().collect(Collectors.groupingBy(item -> { |
| | | return item.getName() + item.getType(); |
| | | })); |
| | | if (Func.isEmpty(existComp)) { |
| | |
| | | } |
| | | Set<VisualComp> addList = new HashSet<>(); |
| | | upList.forEach(item2 -> { |
| | | List<VisualComp> visualComps = (List) existComp.get(item2.getName() + item2.getType()); |
| | | List<VisualComp> visualComps = existComp.get(item2.getName() + item2.getType()); |
| | | Optional.ofNullable(visualComps).ifPresent(compList -> { |
| | | compList.forEach(comp -> { |
| | | comp.setComponent(item2.getComponent()); |