Commit 2e82bcde by zhangkb

标签管理导出功能

parent 9423a999
......@@ -31,6 +31,11 @@ public class TagFileCtrl {
@Autowired
private TagFileService tagExportService;
@GetMapping("/exportTagMeta")
public int exportTagMeta(@RequestParam("idPath") String idPath,HttpServletResponse response) {
return tagExportService.exportTagMetadataExcel(idPath, response);
}
@GetMapping("/exportTag")
public int export(HttpServletResponse response, @RequestParam(required = false , value = "deptIdPath") String deptIdPath) {
deptIdPath = /**UserInfoUtils.getDataRoleOrg()*/String.valueOf(GrantedAuthHelper.getUserOrg());
......
package com.keymobile.tagmanager.model;
import java.io.Serializable;
import javax.validation.constraints.NotNull;
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
import cn.afterturn.easypoi.handler.inter.IExcelModel;
@ExcelTarget("20")
public class TagMetadata implements Serializable, IExcelModel, IExcelDataModel{
/**
*
*/
private static final long serialVersionUID = 1L;
@Excel(name = "模型", orderNum = "0", width=30)
@NotNull
private String metaModel;
@Excel(name = "名称", orderNum = "1", width=30)
@NotNull
private String name;
@Excel(name = "元数据名称", orderNum = "2", width=30)
@NotNull
private String metaName;
@Excel(name = "标签名称", orderNum = "3", width=30)
@NotNull
private String tagName;
public String getMetaModel() {
return metaModel;
}
public void setMetaModel(String metaModel) {
this.metaModel = metaModel;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMetaName() {
return metaName;
}
public void setMetaName(String metaName) {
this.metaName = metaName;
}
public String getTagName() {
return tagName;
}
public void setTagName(String tagName) {
this.tagName = tagName;
}
@org.springframework.data.annotation.Transient
private String errMsg;
@org.springframework.data.annotation.Transient
private int excelRowNum;
@Override
public String getErrorMsg() {
return errMsg;
}
@Override
public void setErrorMsg(String errorMsg) {
this.errMsg = errorMsg;
}
@Override
public Integer getRowNum() {
return excelRowNum;
}
@Override
public void setRowNum(Integer rowNum) {
this.excelRowNum = rowNum;
}
}
package com.keymobile.tagmanager.remote;
import java.util.Map;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "MetadataRepo")
public interface RepoServiceClient {
@PostMapping(value = "/rest/tag/getByTag")
public Map<String,Object> getTagMetadata(@RequestParam String idPath,
@RequestParam(required = false) String keyword,
@RequestParam(required = false) int pageNum,
@RequestParam(required = false) int pageSize);
}
......@@ -23,7 +23,9 @@ import com.keymobile.tagmanager.model.ImportLog;
import com.keymobile.tagmanager.model.Page;
import com.keymobile.tagmanager.model.SysTag;
import com.keymobile.tagmanager.model.Tag;
import com.keymobile.tagmanager.model.TagMetadata;
import com.keymobile.tagmanager.persistence.TagRepository;
import com.keymobile.tagmanager.remote.RepoServiceClient;
import com.keymobile.tagmanager.util.Constants;
import com.keymobile.tagmanager.util.DateUtils;
import com.keymobile.tagmanager.util.ExcelUtils;
......@@ -46,6 +48,31 @@ public class TagFileService {
@Autowired
private TagService tagService;
@Autowired
private RepoServiceClient repoService;
/**
* author:zhangkb time:2020-1-14 desc:元数据管理导出
*/
@SuppressWarnings("unchecked")
public int exportTagMetadataExcel(String idPath,HttpServletResponse response) {
//获取标签元数据信息
Map<String,Object> data = repoService.getTagMetadata(idPath, "", 1, 10000);
List<Map<String,Object>> content = (List<Map<String,Object>>)data.get("content");
List<TagMetadata> toExportTagMeta = new ArrayList<>();
for(Map<String,Object> map : content) {
TagMetadata tagMeta = new TagMetadata();
tagMeta.setMetaModel(map.get("type").toString());
tagMeta.setName(map.get("name").toString());
tagMeta.setMetaName(map.get("namePath").toString());
tagMeta.setTagName(map.get("tagStr").toString());
toExportTagMeta.add(tagMeta);
}
// 导出操作
ExcelUtils.exportExcel(toExportTagMeta, null , "sheet1", Tag.class, "tagMetadata.xlsx", response);
return toExportTagMeta.size();
}
public int exportExcel(String dept, HttpServletResponse response) {
List<Tag> toExportTags = mongoOperations.find(Query.query(Criteria.where("dept").is(dept)
.and("dimensionType").is(Constants.TAG_DIMENSION_TRUE)), Tag.class);
......@@ -204,7 +231,8 @@ public class TagFileService {
t.setTagUser(userId);
t.setDept(dept);
t.setDimensionType(Constants.TAG_DIMENSION_TRUE);
t.setCreateDate(DateUtils.formatDate(new Date(), "yyyy-MM-dd"));
//创建时间换成时间戳
t.setCreateDate(String.valueOf(System.currentTimeMillis()));
t.setImportId(importLog.getId());
//根据dept获取公司机构id
String proDept = tagService.getCompanyOrgIdByUserOrgId(dept);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment