|
@@ -1,23 +1,26 @@
|
|
|
package com.migao.service.impl;
|
|
|
|
|
|
+import com.alibaba.excel.EasyExcel;
|
|
|
+import com.alibaba.excel.ExcelWriter;
|
|
|
+import com.alibaba.excel.write.metadata.WriteSheet;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.migao.config.authority.LoginUtils;
|
|
|
+import com.migao.config.constant.SystemConstant;
|
|
|
+import com.migao.config.properties.SystemProperties;
|
|
|
import com.migao.config.response.*;
|
|
|
import com.migao.entity.po.*;
|
|
|
import com.migao.entity.vo.req.DemandLibraryInsertReq;
|
|
|
import com.migao.entity.vo.req.DemandLibraryQueryReq;
|
|
|
import com.migao.entity.vo.req.DemandLibraryUpdateReq;
|
|
|
import com.migao.entity.vo.req.DemandSubProjectReq;
|
|
|
-import com.migao.entity.vo.res.DemandAttachmentRes;
|
|
|
-import com.migao.entity.vo.res.DemandLibraryPageQueryRes;
|
|
|
-import com.migao.entity.vo.res.DemandLibraryQueryRes;
|
|
|
-import com.migao.entity.vo.res.DictionaryListRes;
|
|
|
+import com.migao.entity.vo.res.*;
|
|
|
import com.migao.mapper.*;
|
|
|
import com.migao.service.DemandLibraryService;
|
|
|
import com.migao.util.EntityUtils;
|
|
|
+import com.migao.util.FileUtils;
|
|
|
import com.migao.util.ProjectNoUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -50,6 +53,8 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
UserMapper userMapper;
|
|
|
@Resource
|
|
|
CompanyMapper companyMapper;
|
|
|
+ @Resource
|
|
|
+ private SystemProperties systemProperties;
|
|
|
|
|
|
@Override
|
|
|
public ResponseBean<?> insert(DemandLibraryInsertReq demandLibrary) {
|
|
@@ -175,6 +180,8 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
.submitTime(element.getSubmitTime())
|
|
|
.deleted(element.getDeleted())
|
|
|
.createUser(userMapper.selectById(element.getCreateUserId()).getName())
|
|
|
+ .acceptDemandTime(element.getAcceptDemandTime())
|
|
|
+ .planDemandTime(element.getPlanDemandTime())
|
|
|
.build();
|
|
|
return dicPageQueryRes;
|
|
|
}
|
|
@@ -219,6 +226,8 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
.submitTime(element.getSubmitTime())
|
|
|
.deleted(element.getDeleted())
|
|
|
.createUser(userMapper.selectById(element.getCreateUserId()).getName())
|
|
|
+ .acceptDemandTime(element.getAcceptDemandTime())
|
|
|
+ .planDemandTime(element.getPlanDemandTime())
|
|
|
.build();
|
|
|
return dicPageQueryRes;
|
|
|
}
|
|
@@ -271,6 +280,8 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
.submitTime(element.getSubmitTime())
|
|
|
.deleted(element.getDeleted())
|
|
|
.createUser(userMapper.selectById(element.getCreateUserId()).getName())
|
|
|
+ .acceptDemandTime(element.getAcceptDemandTime())
|
|
|
+ .planDemandTime(element.getPlanDemandTime())
|
|
|
.build();
|
|
|
return dicPageQueryRes;
|
|
|
}
|
|
@@ -327,6 +338,8 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
.submitTime(element.getSubmitTime())
|
|
|
.deleted(element.getDeleted())
|
|
|
.createUser(userMapper.selectById(element.getCreateUserId()).getName())
|
|
|
+ .acceptDemandTime(element.getAcceptDemandTime())
|
|
|
+ .planDemandTime(element.getPlanDemandTime())
|
|
|
.build();
|
|
|
return dicPageQueryRes;
|
|
|
}
|
|
@@ -407,5 +420,50 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
return ResponseBuilder.ok(companyList);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public ResponseBean<?> export(String date) {
|
|
|
+ //DemandLibraryExportRes
|
|
|
+ List<DemandLibrary> demandLibraryList = demandLibraryMap.findByDate(date);
|
|
|
+ List<DemandLibraryExportRes> duplicatedList = null;
|
|
|
+
|
|
|
+ demandLibraryList.forEach(
|
|
|
+ demandLibrary -> {
|
|
|
+ DemandLibraryExportRes demandLibraryExportRes = DemandLibraryExportRes
|
|
|
+ .builder()
|
|
|
+ .id(demandLibrary.getId())
|
|
|
+ .demandNumber(demandLibrary.getDemandNumber())
|
|
|
+ .demandName(demandLibrary.getDemandName())
|
|
|
+ .demandContent(demandLibrary.getDemandContent())
|
|
|
+ .demandClass(dictionaryMapper.selectById(demandLibrary.getDemandClassId()).getValue())
|
|
|
+ .unitName(companyMapper.selectById(demandLibrary.getUnitNameId()).getOrgName())
|
|
|
+ .demandStatus(demandLibrary.getDemandStatus() == -1 ? "废除"
|
|
|
+ : demandLibrary.getDemandStatus() == 0 ? "立项" : "认领")
|
|
|
+ .demandSchedule(demandLibrary.getDemandSchedule())
|
|
|
+ .associatedProjectId(projectMapper.selectById(demandLibrary.getAssociatedProjectId()).getName())
|
|
|
+ .submitter(demandLibrary.getSubmitter())
|
|
|
+ .createUser(userMapper.selectById(demandLibrary.getCreateUserId()).getName())
|
|
|
+ .submitTime(demandLibrary.getSubmitTime())
|
|
|
+ .build();
|
|
|
+ duplicatedList.add(demandLibraryExportRes);
|
|
|
+ }
|
|
|
+ );
|
|
|
+
|
|
|
+ String fileName = StringUtils.join(
|
|
|
+ FileUtils.getFileNo(), SystemConstant.EXCEL_SUFFIX
|
|
|
+ );
|
|
|
+ String filePath = StringUtils.join(
|
|
|
+ systemProperties.getFileStoreDirPath(), fileName
|
|
|
+ );
|
|
|
+ String fileUrl = StringUtils.join(
|
|
|
+ systemProperties.getDownloadPrefix(), fileName
|
|
|
+ );
|
|
|
+ ExcelWriter excelWriter = EasyExcel.write(filePath, DemandLibraryExportRes.class).build();
|
|
|
+ WriteSheet writeSheet = EasyExcel.writerSheet("需求库数据").build();
|
|
|
+ excelWriter.write(duplicatedList, writeSheet);
|
|
|
+ //关闭流
|
|
|
+ excelWriter.finish();
|
|
|
+ return ResponseBuilder.ok(fileUrl);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|