| | |
| | | package com.ycl.service.impl; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.io.IORuntimeException; |
| | | import cn.hutool.core.util.CharsetUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.hutool.core.util.ZipUtil; |
| | |
| | | import com.ycl.common.utils.file.FileUploadUtils; |
| | | import com.ycl.common.utils.file.FileUtils; |
| | | import com.ycl.common.utils.poi.ExcelUtil; |
| | | import com.ycl.controller.ProjectInfoController; |
| | | import com.ycl.domain.entity.*; |
| | | import com.ycl.domain.excel.ProjectExcelTemplate; |
| | | import com.ycl.domain.form.DocumentInfoForm; |
| | | import com.ycl.domain.form.PlanForm; |
| | | import com.ycl.domain.form.ProjectInfoForm; |
| | | import com.ycl.domain.form.*; |
| | | import com.ycl.domain.query.ProjectExportQuery; |
| | | import com.ycl.domain.query.ProjectInfoQuery; |
| | | import com.ycl.domain.vo.*; |
| | |
| | | import com.ycl.mapper.*; |
| | | import com.ycl.service.FileService; |
| | | import com.ycl.service.ProjectInfoService; |
| | | import com.ycl.system.mapper.SysDeptMapper; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.apache.commons.codec.Charsets; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | private final FileService fileService; |
| | | private final FileMapper fileMapper; |
| | | private final PlanMapper planMapper; |
| | | private final ProjectInvestmentInfoServiceImpl projectInvestmentInfoServiceImpl; |
| | | private final ProjectInvestmentFundingServiceImpl projectInvestmentFundingServiceImpl; |
| | | private final ProjectInvestmentPolicyComplianceServiceImpl projectInvestmentPolicyComplianceServiceImpl; |
| | | private final ProjectUnitRegistrationInfoServiceImpl projectUnitRegistrationInfoServiceImpl; |
| | | private final SysDeptMapper sysDeptMapper; |
| | | |
| | | /** |
| | | * 添加 |
| | |
| | | return Result.ok().data(list).total(0); |
| | | } |
| | | |
| | | Long userId = SecurityUtils.getUserId(); |
| | | String ancestors = sysDeptMapper.selectAncestors(userId); |
| | | String[] ancestorArr = ancestors.split(","); |
| | | for (String ancestor : ancestorArr) { |
| | | if ("101".equals(ancestor)) { // 业主 |
| | | query.setCreateBy(userId); |
| | | query.setRole(0); |
| | | }else if ("102".equals(ancestor)){ // 审批 |
| | | query.setUsedStatus(1); |
| | | query.setRole(1); |
| | | } |
| | | } |
| | | |
| | | IPage<ProjectInfoVO> page = PageUtil.getPage(query, ProjectInfoVO.class); |
| | | baseMapper.getPage(page, query); |
| | | List<ProjectInfoVO> records = page.getRecords(); |
| | | List<ProjectVO> list = new ArrayList<>(); |
| | | records.forEach(vo -> { |
| | | ProjectInfoVO.transform(vo); |
| | | vo.setProjectColorCode("green"); |
| | | ProjectVO projectVO = new ProjectVO(); |
| | | copyToProjectVO(vo, projectVO); |
| | | //翻译项目阶段 |
| | |
| | | } |
| | | |
| | | tempDir = Files.createTempDirectory("temp-dir").toFile(); |
| | | ZipUtil.unzip(tempZip, tempDir, StandardCharsets.ISO_8859_1); |
| | | |
| | | try { |
| | | ZipUtil.unzip(tempZip, tempDir, CharsetUtil.CHARSET_UTF_8); |
| | | }catch (IORuntimeException e){ |
| | | log.error("解压失败,尝试使用GBK编码解压..."); |
| | | ZipUtil.unzip(tempZip, tempDir, CharsetUtil.CHARSET_GBK); |
| | | } |
| | | |
| | | Path path = tempDir.toPath(); |
| | | ProjectImportListener projectImportListener = new ProjectImportListener(); |
| | |
| | | files.forEach(attachmentFile -> { |
| | | try { |
| | | //上传 |
| | | String url = FileUploadUtils.upload(filePath, file); |
| | | String url = FileUploadUtils.uploadIOFile(filePath, attachmentFile); |
| | | //存放的文件名会加上_时间戳的后缀 |
| | | String newName = FileUtils.getName(url); |
| | | attachments.add(new File() |
| | |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public Result editProject(ProjectForm form) { |
| | | if (ObjectUtil.isNotNull(form.getProjectInfoForm())){ |
| | | if (ObjectUtil.isNull(form.getProjectInfoForm().getId())) { |
| | | //新增 |
| | | add(form.getProjectInfoForm()); |
| | | }else { |
| | | //更新 |
| | | update(form.getProjectInfoForm()); |
| | | } |
| | | } |
| | | if (ObjectUtil.isNotNull(form.getProjectInvestmentInfoForm())) { |
| | | if (ObjectUtil.isNull(form.getProjectInvestmentInfoForm().getId())) { |
| | | projectInvestmentInfoServiceImpl.add(form.getProjectInvestmentInfoForm()); |
| | | }else { |
| | | projectInvestmentInfoServiceImpl.update(form.getProjectInvestmentInfoForm()); |
| | | } |
| | | } |
| | | if (ObjectUtil.isNotNull(form.getProjectInvestmentFundingForm())) { |
| | | if (ObjectUtil.isNull(form.getProjectInvestmentFundingForm().getId())) { |
| | | projectInvestmentFundingServiceImpl.add(form.getProjectInvestmentFundingForm()); |
| | | }else { |
| | | projectInvestmentFundingServiceImpl.update(form.getProjectInvestmentFundingForm()); |
| | | } |
| | | } |
| | | if (ObjectUtil.isNotNull(form.getProjectInvestmentPolicyComplianceForm())) { |
| | | if (ObjectUtil.isNull(form.getProjectInvestmentPolicyComplianceForm().getId())) { |
| | | projectInvestmentPolicyComplianceServiceImpl.add(form.getProjectInvestmentPolicyComplianceForm()); |
| | | }else { |
| | | projectInvestmentPolicyComplianceServiceImpl.update(form.getProjectInvestmentPolicyComplianceForm()); |
| | | } |
| | | } |
| | | if (ObjectUtil.isNotNull(form.getProjectUnitRegistrationInfoForm())) { |
| | | if (ObjectUtil.isNull(form.getProjectUnitRegistrationInfoForm().getId())) { |
| | | projectUnitRegistrationInfoServiceImpl.add(form.getProjectUnitRegistrationInfoForm()); |
| | | }else { |
| | | projectUnitRegistrationInfoServiceImpl.update(form.getProjectUnitRegistrationInfoForm()); |
| | | } |
| | | } |
| | | if (ObjectUtil.isNotNull(form.getDocumentInfoForm())) { |
| | | if (ObjectUtil.isNull(form.getDocumentInfoForm().getProjectId())){ |
| | | return Result.error("请先保存投资管理基本信息"); |
| | | }else { |
| | | addDoc(form.getDocumentInfoForm()); |
| | | } |
| | | } |
| | | |
| | | return Result.ok("提交成功"); |
| | | } |
| | | |
| | | private static void deleteDirectoryOrFile(java.io.File file) { |
| | | if (ObjectUtil.isNull(file)) { |
| | | return; |