项目库-认证清单-导入导出

This commit is contained in:
cuijiaming
2023-03-16 16:47:51 +08:00
parent f5800dbc57
commit 6298c37440
11 changed files with 960 additions and 362 deletions
@@ -36,4 +36,14 @@ public interface ISysDictItemService extends IService<SysDictItem> {
void setEditOrderNum(SysDictItem sysDictItem);
String disposeShowDictItemValue(List<SysDictItem> sysDictItems,String fieldValues,String cut,String dicCode);
/**
* 导入时将item_text处置为item_value存入
* @param sysDictItems
* @param fieldTexts
* @param cut
* @param dicCode
* @return
*/
String disposeShowDictItemText(List<SysDictItem> sysDictItems,String fieldTexts,String cut,String dicCode);
}
@@ -183,4 +183,52 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
}
return result;
}
/**
* 导入时将item_text处置为item_value存入
* @param sysDictItems
* @param fieldTexts
* @param cut
* @param dicCode
* @return
*/
@Override
public String disposeShowDictItemText(List<SysDictItem> sysDictItems, String fieldTexts, String cut, String dicCode) {
String result = "";
List<SysDictItem> sysDictItemList = sysDictItems.stream().filter(e -> {
boolean flag = false;
if(StringUtils.equals(e.getDictCode(),dicCode)){
flag = true;
}
return flag;
}).distinct().collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(sysDictItemList)){
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
result = sysDictItemList.stream().filter(e -> {
boolean flag = false;
List<String> fieldTextStrList = Arrays.asList(fieldTexts.split(","));
for (String fieldTextStr : fieldTextStrList) {
if(StringUtils.equals(fieldTextStr,e.getItemText())){
flag = true;
break;
}
}
return flag;
}).map(SysDictItem::getItemValue).collect(Collectors.joining(","));
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
result = sysDictItemList.stream().filter(e -> {
boolean flag = false;
List<String> fieldTextStrList = Arrays.asList(fieldTexts.split(","));
for (String fieldTextStr : fieldTextStrList) {
if(StringUtils.equals(fieldTextStr,e.getItemText())){
flag = true;
break;
}
}
return flag;
}).map(SysDictItem::getItemValue).collect(Collectors.joining(","));
}
}
return result;
}
}
@@ -99,5 +99,7 @@ public interface BussDocumentLibraryEOMapper extends BaseMapper<BussDocumentLibr
@Param("id") String id );
List<Map<String, Object>> queryListByIds(@Param("ids") String ids);
BussDocumentLibraryEO getBySerialNumber(@Param("serialNumber") String serialNumber);
}
@@ -115,4 +115,9 @@
#{item}
</foreach>
</select>
<select id="getBySerialNumber" resultType="com.jero.modules.document.entity.BussDocumentLibraryEO">
select * from buss_document_library
where serial_number =#{serialNumber}
</select>
</mapper>
@@ -225,4 +225,11 @@ public interface IBussDocumentLibraryEOService extends IService<BussDocumentLibr
String sqlJoint(List<QueryConditionVO> queryConditionVOList);
int updateES();
/**
* 根据serialNumber获取BussDumentLibrar对象
* @param serialNumber
* @return
*/
BussDocumentLibraryEO getBySerialNumber(String serialNumber);
}
@@ -6632,4 +6632,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
return count;
}
@Override
public BussDocumentLibraryEO getBySerialNumber(String serialNumber) {
BussDocumentLibraryEO bySerialNumber = bussDocumentLibraryEOMapper.getBySerialNumber(serialNumber);
return bySerialNumber;
}
}
@@ -21,6 +21,7 @@ import com.jero.common.system.base.controller.JeroController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -257,6 +258,34 @@ public class ProjectCertificationInventoryEOController extends JeroController<Pr
projectCertificationInventoryEOService.exportTemplate(projectCertificationInventoryEO,response,request);
}
/**
* 导入数据
*
* @param file
* @param projectCertificationInventoryEO
* @return
*/
@ApiOperation(value="项目库-认证清单表-导入数据", notes="项目库-认证清单表-导入数据")
@RequestMapping(value = "/importData", method = RequestMethod.POST)
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
ProjectCertificationInventoryEO projectCertificationInventoryEO) {
projectCertificationInventoryEOService.importData(file,projectCertificationInventoryEO);
return Result.OK("导入成功");
}
/**
* 导出数据
* @param request
* @param projectCertificationInventoryEO
*/
@ApiOperation(value="项目库-认证清单表-导出数据", notes="项目库-认证清单表-导出数据")
@RequestMapping(value = "/exportData",method = RequestMethod.GET)
// @RequiresPermissions("projectLawsInventory:exportData")
public void exportData(HttpServletResponse response,
HttpServletRequest request,
ProjectCertificationInventoryEO projectCertificationInventoryEO) {
projectCertificationInventoryEOService.exportData(response,request, projectCertificationInventoryEO);
}
@AutoLog(value = "项目库-认证清单表-调取添加")
@ApiOperation(value="项目库-认证清单表-调取添加", notes="项目库-认证清单表-调取添加")
@PostMapping(value = "/callAdd")
@@ -3,6 +3,8 @@ package com.jero.modules.project.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -36,110 +38,110 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
private String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
private Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
private Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private java.lang.String sysOrgCode;
private String sysOrgCode;
/**类别*/
@Excel(name = "类别", width = 15)
@ApiModelProperty(value = "类别")
private java.lang.String category;
private String category;
/**检验项目*/
@Excel(name = "检验项目", width = 15)
@ApiModelProperty(value = "检验项目")
private java.lang.String inspectionItem;
private String inspectionItem;
/**配置项*/
@Excel(name = "配置项", width = 15)
@ApiModelProperty(value = "配置项")
@Dict(dicCode = "ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4")
private java.lang.String configItem;
private String configItem;
/**WVTA ID*/
@Excel(name = "WVTA ID", width = 15)
@ApiModelProperty(value = "WVTA ID")
private java.lang.String wvtaId;
private String wvtaId;
/**标准编号*/
@Excel(name = "标准编号", width = 15)
@Excel(name = "*标准编号", width = 15)
@ApiModelProperty(value = "标准编号")
private java.lang.String serialNumber;
private String serialNumber;
/**责任领域*/
@Excel(name = "责任领域", width = 15)
@ApiModelProperty(value = "责任领域")
private java.lang.String dutyTerritory;
private String dutyTerritory;
/**责任领域名称**/
@Excel(name = "*责任领域", width = 15)
@TableField(exist = false)
private String dutyTerritoryName;
/**责任领域名称-英文**/
@TableField(exist = false)
private String dutyTerritoryNameEn;
/**交付物*/
@Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private java.lang.String deliverable;
/**文档库id*/
@Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private java.lang.String bussDocumentLibraryId;
/**工程接口人*/
@Excel(name = "工程接口人", width = 15)
/**工程接口人*/
@ApiModelProperty(value = "工程接口人")
private java.lang.String sdt;
/**工程接口人名称**/
@TableField(exist = false)
private String sdt;
/**工程接口人名称**/
@Excel(name = "工程接口人", width = 15)
@TableField(exist = false)
private String sdtName;
/**责任人*/
@Excel(name = "责任人", width = 15)
/**责任人*/
@ApiModelProperty(value = "责任人")
private java.lang.String dutyPerson;
private String dutyPerson;
/**责任人名称**/
@Excel(name = "责任人", width = 15)
@TableField(exist = false)
private String dutyPersonName;
/**交付物类型*/
@Excel(name = "交付物类型", width = 15)
/**交付物类型*/
@ApiModelProperty(value = "交付物类型")
private java.lang.String deliverableType;
private String deliverableType;
// 交付物类型名称
@Excel(name = "交付物类型", width = 15)
@TableField(exist = false)
private String deliverableTypeName;
// 交付物类型名称-英文
@TableField(exist = false)
private String deliverableTypeNameEn;
/**交付物*/
// @Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private String deliverable;
/**文档库id*/
// @Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private String bussDocumentLibraryId;
/**交付物模板*/
@Excel(name = "交付物模板", width = 15)
// @Excel(name = "交付物模板", width = 15)
@ApiModelProperty(value = "交付物模板")
private java.lang.String deliverableTemplate;
private String deliverableTemplate;
/**交付物模板名称**/
@TableField(exist = false)
private String deliverableTemplateName;
@@ -147,48 +149,48 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**交付结果*/
@Excel(name = "交付结果", width = 15)
@ApiModelProperty(value = "交付结果")
private java.lang.String deliveryResult;
private String deliveryResult;
/**截止日期*/
@Excel(name = "截止日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "截止日期")
private java.util.Date endTime;
private Date endTime;
/**流程状态*/
@Excel(name = "流程状态", width = 15)
@ApiModelProperty(value = "流程状态")
private java.lang.String flowStatus;
private String flowStatus;
// 流程状态展示名称
@Excel(name = "流程状态", width = 15)
@TableField(exist = false)
private String flowStatusName;
/**报告编号*/
@Excel(name = "报告编号", width = 15)
@ApiModelProperty(value = "报告编号")
private java.lang.String reportNumber;
private String reportNumber;
/**产品型号*/
@Excel(name = "产品型号", width = 15)
@ApiModelProperty(value = "产品型号")
private java.lang.String productModel;
private String productModel;
/**生产企业名称*/
@Excel(name = "生产企业名称", width = 15)
@ApiModelProperty(value = "生产企业名称")
private java.lang.String productionEnterpriseName;
private String productionEnterpriseName;
/**认证进度*/
@Excel(name = "认证进度", width = 15)
@ApiModelProperty(value = "认证进度")
private java.lang.String certificationProgress;
private String certificationProgress;
/**认证进度展示名称**/
@TableField(exist = false)
private String certificationProgress_dictText;
@Excel(name = "认证进度备注", width = 15)
// @Excel(name = "认证进度备注", width = 15)
@ApiModelProperty(value = "认证进度备注")
private String certificationProgressRemark;
@@ -208,4 +210,7 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**值类型,对应SysCategoryValueTypeEnum中value**/
@TableField(exist = false)
private String valueType;
@TableField(exist = false)
private String excelName;
}
@@ -0,0 +1,207 @@
package com.jero.modules.project.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
/**
* @Description: 项目库-认证清单表
* @Author: jero-boot
* @Date: 2023-03-03
* @Version: V1.0
*/
@Data
@TableName("project_certification_inventory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="project_certification_inventory对象", description="项目库-认证清单表")
public class ProjectCertificationInventoryEOEn implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private java.lang.String sysOrgCode;
/**类别*/
@Excel(name = "Category", width = 15)
@ApiModelProperty(value = "类别")
private java.lang.String category;
/**检验项目*/
@Excel(name = "Inspection Items", width = 15)
@ApiModelProperty(value = "检验项目")
private java.lang.String inspectionItem;
/**配置项*/
@Excel(name = "Configuration Item", width = 15)
@ApiModelProperty(value = "配置项")
@Dict(dicCode = "ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4")
private java.lang.String configItem;
/**WVTA ID*/
@Excel(name = "WVTA ID", width = 15)
@ApiModelProperty(value = "WVTA ID")
private java.lang.String wvtaId;
/**标准编号*/
@Excel(name = "*Standard No", width = 15)
@ApiModelProperty(value = "标准编号")
private java.lang.String serialNumber;
/**责任领域*/
@ApiModelProperty(value = "责任领域")
private java.lang.String dutyTerritory;
/**责任领域名称**/
@Excel(name = "*Responsible Field", width = 15)
@TableField(exist = false)
private String dutyTerritoryName;
/**责任领域名称-英文**/
@TableField(exist = false)
private String dutyTerritoryNameEn;
/**工程接口人*/
@ApiModelProperty(value = "工程接口人")
private java.lang.String sdt;
/**工程接口人名称**/
@Excel(name = "Eng. Interface", width = 15)
@TableField(exist = false)
private String sdtName;
/**责任人*/
@ApiModelProperty(value = "责任人")
private java.lang.String dutyPerson;
/**责任人名称**/
@Excel(name = "Assignee", width = 15)
@TableField(exist = false)
private String dutyPersonName;
/**交付物类型*/
@ApiModelProperty(value = "交付物类型")
private java.lang.String deliverableType;
// 交付物类型名称
@Excel(name = "Deliverable Type", width = 15)
@TableField(exist = false)
private String deliverableTypeName;
// 交付物类型名称-英文
@TableField(exist = false)
private String deliverableTypeNameEn;
/**交付物*/
// @Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private java.lang.String deliverable;
/**文档库id*/
// @Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private java.lang.String bussDocumentLibraryId;
/**交付物模板*/
// @Excel(name = "交付物模板", width = 15)
@ApiModelProperty(value = "交付物模板")
private java.lang.String deliverableTemplate;
/**交付物模板名称**/
@TableField(exist = false)
private String deliverableTemplateName;
/**交付结果*/
@Excel(name = "Deliverables Result", width = 15)
@ApiModelProperty(value = "交付结果")
private java.lang.String deliveryResult;
/**截止日期*/
@Excel(name = "Due Date", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "截止日期")
private java.util.Date endTime;
/**流程状态*/
@ApiModelProperty(value = "流程状态")
private java.lang.String flowStatus;
// 流程状态展示名称
@Excel(name = "Process Status", width = 15)
@TableField(exist = false)
private String flowStatusName;
/**报告编号*/
@Excel(name = "Report No", width = 15)
@ApiModelProperty(value = "报告编号")
private java.lang.String reportNumber;
/**产品型号*/
@Excel(name = "Product Model", width = 15)
@ApiModelProperty(value = "产品型号")
private java.lang.String productModel;
/**生产企业名称*/
@Excel(name = "Name Of Manufacturer", width = 15)
@ApiModelProperty(value = "生产企业名称")
private java.lang.String productionEnterpriseName;
/**认证进度*/
@Excel(name = "Homologation Progress", width = 15)
@ApiModelProperty(value = "认证进度")
private java.lang.String certificationProgress;
/**认证进度展示名称**/
@TableField(exist = false)
private String certificationProgress_dictText;
// @Excel(name = "认证进度备注", width = 15)
@ApiModelProperty(value = "认证进度备注")
private String certificationProgressRemark;
/**项目库id*/
@ApiModelProperty(value = "项目库id")
private String projectLibraryId;
@TableField(exist = false)
private String cut;
@TableField(exist = false)
private String ids;
@TableField(exist = false)
private String roleCode;
}
@@ -11,6 +11,7 @@ import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysRole;
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
import com.jero.modules.todoCenter.entity.ProcessInfoEO;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -93,6 +94,15 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
*/
void disposeData(List<ProjectCertificationInventoryEO> datas, String cut);
/**
* 导入时的数据处理
* @param datas
* @param cut
*/
void importDisposeData(List<ProjectCertificationInventoryEO> datas, String cut);
String getTreeNameImport(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList);
String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList);
/**
@@ -185,6 +195,21 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
*/
Result<?> callAdd(JSONObject json);
/**
* 导入数据
* @param file
* @param projectCertificationInventoryEO
*/
void importData(MultipartFile file, ProjectCertificationInventoryEO projectCertificationInventoryEO);
/**
* projectCertificationInventoryEO
* @param response
* @param request
* @param projectCertificationInventoryEO
*/
void exportData(HttpServletResponse response, HttpServletRequest request, ProjectCertificationInventoryEO projectCertificationInventoryEO);
/**
* 引用交付物
* @param json