xiaoyong931011
2022-07-07 f17a3980d0dfec11c1db69503e930fa20b6684f8
src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java
@@ -1,6 +1,7 @@
package com.xcong.farmer.cms.modules.system.service.Impl;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.ZipUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -8,11 +9,14 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.farmer.cms.common.exception.GlobalException;
import com.xcong.farmer.cms.common.response.Result;
import com.xcong.farmer.cms.common.utils.FileUtils;
import com.xcong.farmer.cms.configurations.GlobalExceptionHandler;
import com.xcong.farmer.cms.configurations.properties.CmsProperties;
import com.xcong.farmer.cms.core.template.TemplateConfiguration;
import com.xcong.farmer.cms.modules.system.dto.TemplateListDto;
import com.xcong.farmer.cms.modules.system.entity.CmsTemplateEntity;
import com.xcong.farmer.cms.modules.system.entity.UserEntity;
import com.xcong.farmer.cms.modules.system.mapper.CmsTemplateMapper;
import com.xcong.farmer.cms.modules.system.service.ICmsTemplateService;
import com.xcong.farmer.cms.modules.system.util.LoginUserUtil;
@@ -23,7 +27,12 @@
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -93,7 +102,7 @@
                        cmsTemplate.setType(1);
                    }
                    cmsTemplate.setName(StrUtil.isNotBlank(attr) ? attr : templateFile.getName());
                    cmsTemplate.setPath(templateFile.getName());
                    cmsTemplate.setPath(IdUtil.simpleUUID()+templateFile.getName());
                    this.baseMapper.insert(cmsTemplate);
                }
@@ -115,7 +124,7 @@
                    cmsTemplate.setType(1);
                }
                cmsTemplate.setName(StrUtil.isNotBlank(attr) ? attr : file.getName());
                cmsTemplate.setPath(file.getName());
                cmsTemplate.setPath(IdUtil.simpleUUID()+file.getName());
                this.baseMapper.insert(cmsTemplate);
            }
@@ -139,4 +148,38 @@
        Long companyId = LoginUserUtil.getCompanyId();
        this.baseMapper.delete(id, companyId);
    }
    @Override
    public Result dropdownList() {
        Long companyId = LoginUserUtil.getCompanyId();
        QueryWrapper<CmsTemplateEntity> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("company_id",companyId);
        List<CmsTemplateEntity> cmsTemplateEntities = this.baseMapper.selectList(objectQueryWrapper);
        return Result.ok(cmsTemplateEntities);
    }
    @Autowired
    private CmsProperties cmsProperties;
    @Override
    public Result viewTemplateInfo(Long id) {
        Long companyId = LoginUserUtil.getCompanyId();
        CmsTemplateEntity cmsTemplateEntity = this.baseMapper.selectById(id);
        String baseUrl = cmsProperties.getBaseUrl();
        String templatePath = cmsProperties.getTemplatePath();
        String htmlUrl = baseUrl + templatePath;
        String pathName = htmlUrl + "\\" + cmsTemplateEntity.getPath();
        byte[] bytes = new byte[0];
        try {
            bytes = Files.readAllBytes(Paths.get(pathName));
        } catch (IOException e) {
            e.printStackTrace();
            return Result.ok("未找到模板");
        }
        String content = new String(bytes, StandardCharsets.UTF_8);
        return Result.ok(content );
    }
}