|
@@ -106,55 +106,6 @@ public class SpecimenInfoController {
|
|
|
BeanUtils.toBean(list, SpecimenInfoExportRespVO.class));
|
|
|
}
|
|
|
|
|
|
-// @GetMapping("/get-specimen-import-template")
|
|
|
-// @Operation(summary = "获得导入标本信息模板")
|
|
|
-// public void getSpecimenImportTemplate(HttpServletResponse response) throws IOException {
|
|
|
-//
|
|
|
-// // 设置响应类型
|
|
|
-// response.setContentType("application/vnd.ms-excel");
|
|
|
-// response.setCharacterEncoding("UTF-8");
|
|
|
-// // URL 编码文件名
|
|
|
-// String fileName = URLEncoder.encode("标本导入模板.xls", "UTF-8");
|
|
|
-// response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
|
|
|
-//
|
|
|
-// // 手动创建导出 demo
|
|
|
-// List<SpecimenImportExcelVO> list = Arrays.asList(
|
|
|
-// SpecimenImportExcelVO.builder()
|
|
|
-// .specimenNumber("01522") // 标本编号
|
|
|
-// .assetNumber("20129103") // 资产号
|
|
|
-// .chineseName("贵州龙") // 中文名称
|
|
|
-// .englishName("keichousaurus") // 外文名称
|
|
|
-// .specimenType(SpecimenTypeEnum.FOSSIL.getType()) // 使用枚举:标本类型(矿物/矿石/岩石/化石/陨石)
|
|
|
-// .storageLocation("临展厅") // 存放位置
|
|
|
-// .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 使用枚举:保存类型(标本/原石/光片/薄片/切片/模型及其他)
|
|
|
-// .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态(完整/受损/严重受损/无实物)
|
|
|
-// .specimenAmount(1) // 数量(件/套)
|
|
|
-// .size("1000cm") // 规格(cm)
|
|
|
-// .weight("1.5g") // 重量(g)
|
|
|
-// .composition("硅酸盐") // 成分/化学式
|
|
|
-// .origin("兴义县顶效镇绿荫村") // 产地/发现地(市级县级产地)
|
|
|
-// .economize("贵州省") // 省
|
|
|
-// .country("中国(China)") // 国家
|
|
|
-// .era("晚三叠世(距今2.1亿年)") // 形成时代
|
|
|
-// .preservedLayer("上三叠统竹竿坡组") // 地质产状或层位(产出状态,化石指产出层位)
|
|
|
-// .meteoriteType("脊索动物门鳍龙目肿肋龙亚目贵州龙科") // 分类(矿物的类型/岩石的类型/化石的类型/陨石的类型)
|
|
|
-// .internationalName("Mineral A") // 国际命名
|
|
|
-// .discoveryTime("2024/01/01") // 发现时间
|
|
|
-// .fallTime("2024/01/02") // 降落时间
|
|
|
-// .source(SourceEnum.PURCHASE.getSource()) // 使用枚举:来源(采购/捐赠/采集)
|
|
|
-// .provider("天娇雅石居") // 标本提供者
|
|
|
-// .specimenPrice(new BigDecimal("5900.01")) // 单价
|
|
|
-// .acquisitionTime("2012/12/20") // 入藏时间
|
|
|
-// .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途(工业原料/药用/建材/科学研究/观赏/其它)
|
|
|
-// .purpose("科学普及;对比研究") // 具体用途
|
|
|
-// .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态(在馆/展陈/借出)
|
|
|
-// .imageName("image1.jpg、image2.jpg、image3.jpg") // 图片资料(图件名称)
|
|
|
-// .description("这是一个矿石标本") // 文献资料
|
|
|
-// .notes("备注信息") // 备注
|
|
|
-// .build()
|
|
|
-// );
|
|
|
-// ExcelUtils.write(response, "标本导入模板.xls", "标本信息", SpecimenImportExcelVO.class, list);
|
|
|
-// }
|
|
|
|
|
|
@GetMapping("/get-specimen-import-template")
|
|
|
@Operation(summary = "获得导入标本信息模板")
|
|
@@ -167,196 +118,222 @@ public class SpecimenInfoController {
|
|
|
String fileName = URLEncoder.encode("标本导入模板.xls", "UTF-8");
|
|
|
response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
|
|
|
|
|
|
- // 根据 specimen_type 参数选择模板
|
|
|
- List<SpecimenImportExcelVO> list;
|
|
|
-
|
|
|
- // 根据标本类型生成不同的模板
|
|
|
- switch (specimenType) {
|
|
|
- case 0: // 矿物
|
|
|
- list = Arrays.asList(
|
|
|
- SpecimenImportExcelVO.builder()
|
|
|
- .specimenNumber("00716") // 标本编号
|
|
|
- .assetNumber("20121324") // 资产号
|
|
|
- .chineseName("文石晶簇") // 中文名称
|
|
|
- .englishName("Aragonite") // 外文名称
|
|
|
- .specimenType(SpecimenTypeEnum.MINERAL.getType()) // 标本类型:矿物
|
|
|
- .storageLocation("奇妙的矿物世界") // 存放位置
|
|
|
- .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
- .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
- .specimenAmount(1) // 数量:1件
|
|
|
- .size("11000") // 规格:无
|
|
|
- .weight("11220.22") // 重量:无
|
|
|
- .composition("CaCO3") // 成分/化学式:碳酸钙
|
|
|
- .origin("湖北") // 产地
|
|
|
- .economize("湖北省") // 省
|
|
|
- .country("中国(China)") // 国家
|
|
|
- .era("N/A") // 形成时代:无
|
|
|
- .preservedLayer("N/A") // 地质产状或层位:无
|
|
|
- .meteoriteType("碳酸盐") // 分类:矿物类型
|
|
|
- .internationalName("N/A") // 国际命名:无
|
|
|
- .discoveryTime("N/A") // 发现时间:无
|
|
|
- .fallTime("N/A") // 降落时间:无
|
|
|
- .source(SourceEnum.PURCHASE.getSource()) // 来源:采购
|
|
|
- .provider("无") // 标本提供者:无
|
|
|
- .specimenPrice(new BigDecimal("56000")) // 单价:56000元
|
|
|
- .acquisitionTime("2012/5/5") // 入藏时间:2012年5月5日
|
|
|
- .mainPurpose(MainPurposeEnum.APPRECIATE.getMainPurpose()) // 主要用途:观赏
|
|
|
- .purpose("观赏,品质较佳者,经加工打磨后呈现美丽的同心圆花纹") // 具体用途
|
|
|
- .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
- .imageName("P1110890.JPG") // 图片资料:图件名称
|
|
|
- .description("这是一个矿石标本") // 文献资料
|
|
|
- .notes("无") // 备注
|
|
|
- .build()
|
|
|
- );
|
|
|
- break;
|
|
|
- case 1: // 岩石-辉石橄榄岩
|
|
|
- list = Arrays.asList(
|
|
|
- SpecimenImportExcelVO.builder()
|
|
|
- .specimenNumber("00881") // 标本编号
|
|
|
- .assetNumber("") // 资产号(没有提供)
|
|
|
- .chineseName("辉石橄榄岩") // 中文名称
|
|
|
- .englishName("Pyroxene peridotite") // 外文名称
|
|
|
- .specimenType(SpecimenTypeEnum.ROCK.getType()) // 标本类型:岩石
|
|
|
- .storageLocation("岩石王国") // 存放位置
|
|
|
- .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
- .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
- .specimenAmount(1) // 数量:1件
|
|
|
- .size("N/A") // 规格:未提供
|
|
|
- .weight("N/A") // 重量:未提供
|
|
|
- .composition("N/A") // 成分/化学式:未提供
|
|
|
- .origin("张家口万全县") // 产地/发现地:张家口万全县
|
|
|
- .economize("河北") // 省:河北
|
|
|
- .country("中国(China)") // 国家:中国
|
|
|
- .preservedLayer("N/A") // 地质产状或层位:未提供
|
|
|
- .meteoriteType("N/A") // 分类:未提供
|
|
|
- .internationalName("N/A") // 国际命名:未提供
|
|
|
- .discoveryTime("N/A") // 发现时间:未提供
|
|
|
- .fallTime("N/A") // 降落时间:未提供
|
|
|
- .source(SourceEnum.DONATION.getSource()) // 来源:捐赠
|
|
|
- .provider("化探63级校友") // 标本提供者:化探63级校友
|
|
|
- .specimenPrice(new BigDecimal("0.00")) // 单价:未提供
|
|
|
- .acquisitionTime("2016/11/2") // 入藏时间:2016年11月2日
|
|
|
- .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
- .purpose("可作耐火材料原料") // 具体用途:可作耐火材料原料
|
|
|
- .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
- .imageName("DSC00183.JPG") // 图片资料:图件名称
|
|
|
- .description("N/A") // 文献资料:未提供
|
|
|
- .notes("N/A") // 备注:未提供
|
|
|
- .build()
|
|
|
- );
|
|
|
- break;
|
|
|
- case 2: // 总表
|
|
|
- list = Arrays.asList(
|
|
|
- SpecimenImportExcelVO.builder()
|
|
|
- .specimenNumber("01522") // 标本编号
|
|
|
- .assetNumber("20129103") // 资产号
|
|
|
- .chineseName("贵州龙") // 中文名称
|
|
|
- .englishName("keichousaurus") // 外文名称
|
|
|
- .specimenType(SpecimenTypeEnum.FOSSIL.getType()) // 使用枚举:标本类型(矿物/矿石/岩石/化石/陨石)
|
|
|
- .storageLocation("临展厅") // 存放位置
|
|
|
- .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 使用枚举:保存类型(标本/原石/光片/薄片/切片/模型及其他)
|
|
|
- .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态(完整/受损/严重受损/无实物)
|
|
|
- .specimenAmount(1) // 数量(件/套)
|
|
|
- .size("1000cm") // 规格(cm)
|
|
|
- .weight("1.5g") // 重量(g)
|
|
|
- .composition("硅酸盐") // 成分/化学式
|
|
|
- .origin("兴义县顶效镇绿荫村") // 产地/发现地(市级县级产地)
|
|
|
- .economize("贵州省") // 省
|
|
|
- .country("中国(China)") // 国家
|
|
|
- .era("晚三叠世(距今2.1亿年)") // 形成时代
|
|
|
- .preservedLayer("上三叠统竹竿坡组") // 地质产状或层位(产出状态,化石指产出层位)
|
|
|
- .meteoriteType("脊索动物门鳍龙目肿肋龙亚目贵州龙科") // 分类(矿物的类型/岩石的类型/化石的类型/陨石的类型)
|
|
|
- .internationalName("Mineral A") // 国际命名
|
|
|
- .discoveryTime("2024/01/01") // 发现时间
|
|
|
- .fallTime("2024/01/02") // 降落时间
|
|
|
- .source(SourceEnum.PURCHASE.getSource()) // 使用枚举:来源(采购/捐赠/采集)
|
|
|
- .provider("天娇雅石居") // 标本提供者
|
|
|
- .specimenPrice(new BigDecimal("5900.01")) // 单价
|
|
|
- .acquisitionTime("2012/12/20") // 入藏时间
|
|
|
- .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途(工业原料/药用/建材/科学研究/观赏/其它)
|
|
|
- .purpose("科学普及;对比研究") // 具体用途
|
|
|
- .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态(在馆/展陈/借出)
|
|
|
- .imageName("image1.jpg、image2.jpg、image3.jpg") // 图片资料(图件名称)
|
|
|
- .description("这是一个矿石标本") // 文献资料
|
|
|
- .notes("备注信息") // 备注
|
|
|
- .build()
|
|
|
- );
|
|
|
- break;
|
|
|
- case 3: // 化石
|
|
|
- list = Arrays.asList(
|
|
|
- SpecimenImportExcelVO.builder()
|
|
|
- .specimenNumber("01522") // 标本编号
|
|
|
- .assetNumber("20129103") // 资产号
|
|
|
- .chineseName("贵州龙") // 中文名称
|
|
|
- .englishName("keichousaurus") // 外文名称
|
|
|
- .specimenType(SpecimenTypeEnum.FOSSIL.getType()) // 标本类型:化石
|
|
|
- .storageLocation("临展厅") // 存放位置
|
|
|
- .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
- .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
- .specimenAmount(1) // 数量(件/套)
|
|
|
- .size("") // 规格(cm) - 未提供,留空
|
|
|
- .origin("兴义县顶效镇绿荫村") // 产地/发现地(市级县级产地)
|
|
|
- .economize("贵州省") // 省
|
|
|
- .country("中国(China)") // 国家
|
|
|
- .era("晚三叠世(距今2.1亿年)") // 形成时代
|
|
|
- .preservedLayer("上三叠统竹竿坡组") // 地质产状或层位
|
|
|
- .meteoriteType("脊索动物门鳍龙目肿肋龙亚目贵州龙科") // 分类(化石的类型)
|
|
|
- .source(SourceEnum.PURCHASE.getSource()) // 来源:采购
|
|
|
- .provider("天娇雅石居") // 标本提供者
|
|
|
- .specimenPrice(new BigDecimal("5900")) // 单价(元)
|
|
|
- .acquisitionTime("2012/12/20") // 入藏时间
|
|
|
- .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
- .purpose("科学普及;对比研究") // 具体用途
|
|
|
- .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
- .imageName("1730775369277.JPG") // 图片资料(图件名称)
|
|
|
- .description("贵州龙化石") // 文献资料
|
|
|
- .notes("") // 备注 - 未提供,留空
|
|
|
- .build()
|
|
|
- );
|
|
|
- break;
|
|
|
- case 4: // 陨石
|
|
|
- list = Arrays.asList(
|
|
|
- SpecimenImportExcelVO.builder()
|
|
|
- .specimenNumber("00691") // 标本编号
|
|
|
- .assetNumber("") // 资产号
|
|
|
- .chineseName("南丹铁陨石") // 中文名称
|
|
|
- .englishName("Iron meteorite") // 外文名称
|
|
|
- .specimenType(SpecimenTypeEnum.METEORITE.getType()) // 标本类型:陨石
|
|
|
- .storageLocation("序厅") // 存放位置
|
|
|
- .preservationType(PreservationTypeEnum.ROUGH_STONE.getPreservationType()) // 保存类型:原石
|
|
|
- .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
- .specimenAmount(1) // 数量(件/套)
|
|
|
- .size("150*120*90") // 规格(cm)
|
|
|
- .weight("3500000") // 重量(g)
|
|
|
- .composition("铁镍金属") // 成分/化学式
|
|
|
- .origin("南丹") // 产地/发现地(市级县级产地)
|
|
|
- .economize("广西") // 省
|
|
|
- .country("中国(China)") // 国家
|
|
|
- .meteoriteType("Iron, IAB-MG") // 陨石的类型
|
|
|
- .internationalName("Nantan") // 国际命名
|
|
|
- .discoveryTime("1958") // 发现时间
|
|
|
- .fallTime("") // 降落时间
|
|
|
- .source(SourceEnum.DONATION.getSource()) // 来源:捐赠
|
|
|
- .provider("化探63级校友") // 标本提供者
|
|
|
- .specimenPrice(new BigDecimal("0")) // 单价(元)
|
|
|
- .acquisitionTime("2016/11/2") // 入藏时间
|
|
|
- .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
- .purpose("科学研究") // 具体用途
|
|
|
- .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
- .imageName("DSC03583.JPG, DSC01271.JPG") // 图片资料(图件名称)
|
|
|
- .description("南丹铁陨石样本") // 文献资料
|
|
|
- .notes("") // 备注
|
|
|
- .build()
|
|
|
- );
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw exception(INVALID_SPECIMEN_TYPE);
|
|
|
+ // 定义 list 和 voClass
|
|
|
+ List<?> list = null;
|
|
|
+ Class<?> voClass = null;
|
|
|
+
|
|
|
+ // 使用 if 语句选择不同的模板
|
|
|
+ if (specimenType == 0) { // 矿物
|
|
|
+ voClass = MineralSpecimenImportExcelVO.class;
|
|
|
+ list = getMineralTemplate();
|
|
|
+ } else if (specimenType == 1) { // 岩石-矿石
|
|
|
+ voClass = RockSpecimenImportExcelVO.class;
|
|
|
+ list = getRockTemplate();
|
|
|
+ } else if (specimenType == 2) { // 总表
|
|
|
+ voClass = SpecimenImportExcelVO.class;
|
|
|
+ list = getAllExcel();
|
|
|
+ } else if (specimenType == 3) { // 化石
|
|
|
+ voClass = FossilSpecimenImportExcelVO.class;
|
|
|
+ list = getFossilTemplate();
|
|
|
+ } else if (specimenType == 4) { // 陨石
|
|
|
+ voClass = MeteoriteSpecimenImportExcelVO.class;
|
|
|
+ list = getMeteoriteTemplate();
|
|
|
+ } else {
|
|
|
+ throw exception(INVALID_SPECIMEN_TYPE); // 无效的标本类型
|
|
|
}
|
|
|
|
|
|
- // 使用 ExcelUtils 写入 Excel 文件
|
|
|
- ExcelUtils.write(response, "标本导入模板.xls", "标本信息", SpecimenImportExcelVO.class, list);
|
|
|
+ // 强制转换 list 类型为具体类型(例如 MineralSpecimenImportExcelVO)
|
|
|
+ if (list != null && !list.isEmpty()) {
|
|
|
+ if (voClass == MineralSpecimenImportExcelVO.class) {
|
|
|
+ List<MineralSpecimenImportExcelVO> mineralList = (List<MineralSpecimenImportExcelVO>) list;
|
|
|
+ ExcelUtils.write(response, "矿物导入模板.xls", "标本信息", MineralSpecimenImportExcelVO.class, mineralList);
|
|
|
+ } else if (voClass == RockSpecimenImportExcelVO.class) {
|
|
|
+ List<RockSpecimenImportExcelVO> rockList = (List<RockSpecimenImportExcelVO>) list;
|
|
|
+ ExcelUtils.write(response, "岩石-矿石导入模板.xls", "标本信息", RockSpecimenImportExcelVO.class, rockList);
|
|
|
+
|
|
|
+ } else if (voClass == SpecimenImportExcelVO.class) {
|
|
|
+ List<SpecimenImportExcelVO> allList = (List<SpecimenImportExcelVO>) list;
|
|
|
+ ExcelUtils.write(response, "标本导入模板.xls", "标本信息", SpecimenImportExcelVO.class, allList);
|
|
|
+
|
|
|
+ } else if (voClass == FossilSpecimenImportExcelVO.class) {
|
|
|
+ List<FossilSpecimenImportExcelVO> fossilList = (List<FossilSpecimenImportExcelVO>) list;
|
|
|
+ ExcelUtils.write(response, "化石导入模板.xls", "标本信息", FossilSpecimenImportExcelVO.class, fossilList);
|
|
|
+ } else if (voClass == MeteoriteSpecimenImportExcelVO.class) {
|
|
|
+ List<MeteoriteSpecimenImportExcelVO> meteoriteList = (List<MeteoriteSpecimenImportExcelVO>) list;
|
|
|
+ ExcelUtils.write(response, "陨石导入模板.xls", "标本信息", MeteoriteSpecimenImportExcelVO.class, meteoriteList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<MineralSpecimenImportExcelVO> getMineralTemplate() {
|
|
|
+ return Arrays.asList(
|
|
|
+ MineralSpecimenImportExcelVO.builder()
|
|
|
+ .specimenNumber("00716") // 标本编号
|
|
|
+ .assetNumber("20121324") // 资产号
|
|
|
+ .chineseName("文石晶簇") // 中文名称
|
|
|
+ .englishName("Aragonite") // 外文名称
|
|
|
+ .specimenType(SpecimenTypeEnum.MINERAL.getType()) // 标本类型:矿物
|
|
|
+ .storageLocation("奇妙的矿物世界") // 存放位置
|
|
|
+ .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
+ .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
+ .specimenAmount(1) // 数量:1件
|
|
|
+ .size("11000") // 规格:无
|
|
|
+ .weight("11220.22") // 重量:无
|
|
|
+ .composition("CaCO3") // 成分/化学式:碳酸钙
|
|
|
+ .origin("湖北") // 产地
|
|
|
+ .economize("湖北") // 省
|
|
|
+ .country("中国(China)") // 国家
|
|
|
+ .era("N/A") // 形成时代:无
|
|
|
+ .meteoriteType("碳酸盐") // 分类:矿物类型
|
|
|
+ .source(SourceEnum.PURCHASE.getSource()) // 来源:采购
|
|
|
+ .provider("无") // 标本提供者:无
|
|
|
+ .specimenPrice(new BigDecimal("56000")) // 单价:56000元
|
|
|
+ .acquisitionTime("2012/5/5") // 入藏时间:2012年5月5日
|
|
|
+ .mainPurpose(MainPurposeEnum.APPRECIATE.getMainPurpose()) // 主要用途:观赏
|
|
|
+ .purpose("观赏,品质较佳者,经加工打磨后呈现美丽的同心圆花纹") // 具体用途
|
|
|
+ .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
+ .imageName("P1110890.JPG") // 图片资料:图件名称
|
|
|
+ .description("这是一个矿石标本") // 文献资料
|
|
|
+ .notes("无") // 备注
|
|
|
+ .build()
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<RockSpecimenImportExcelVO> getRockTemplate() {
|
|
|
+ return Arrays.asList(
|
|
|
+ RockSpecimenImportExcelVO.builder()
|
|
|
+ .specimenNumber("00881") // 标本编号
|
|
|
+ .assetNumber("") // 资产号
|
|
|
+ .chineseName("辉石橄榄岩") // 中文名称
|
|
|
+ .englishName("Pyroxene peridotite") // 外文名称
|
|
|
+ .specimenType(SpecimenTypeEnum.ROCK.getType()) // 标本类型:岩石
|
|
|
+ .storageLocation("岩石王国") // 存放位置
|
|
|
+ .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
+ .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
+ .specimenAmount(1) // 数量:1件
|
|
|
+ .size("1000") // 规格:未提供
|
|
|
+ .weight("1000.01") // 重量:未提供
|
|
|
+ .composition("") // 成分/化学式:未提供
|
|
|
+ .origin("张家口万全县") // 产地/发现地
|
|
|
+ .economize("河北") // 省:河北
|
|
|
+ .country("中国(China)") // 国家:中国
|
|
|
+ .preservedLayer("N/A") // 地质产状或层位:未提供
|
|
|
+ .meteoriteType("N/A") // 分类:未提供
|
|
|
+ .source(SourceEnum.DONATION.getSource()) // 来源:捐赠
|
|
|
+ .provider("化探63级校友") // 标本提供者
|
|
|
+ .specimenPrice(new BigDecimal("0.00")) // 单价:未提供
|
|
|
+ .acquisitionTime("2016/11/2") // 入藏时间
|
|
|
+ .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
+ .purpose("可作耐火材料原料") // 具体用途:可作耐火材料原料
|
|
|
+ .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
+ .imageName("DSC00183.JPG") // 图片资料:图件名称
|
|
|
+ .description("N/A") // 文献资料
|
|
|
+ .notes("N/A") // 备注
|
|
|
+ .build()
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<RockSpecimenImportExcelVO> getAllExcel() {
|
|
|
+ return Arrays.asList(
|
|
|
+ RockSpecimenImportExcelVO.builder()
|
|
|
+ .specimenNumber("00881") // 标本编号
|
|
|
+ .assetNumber("") // 资产号
|
|
|
+ .chineseName("辉石橄榄岩") // 中文名称
|
|
|
+ .englishName("Pyroxene peridotite") // 外文名称
|
|
|
+ .specimenType(SpecimenTypeEnum.ROCK.getType()) // 标本类型:岩石
|
|
|
+ .storageLocation("岩石王国") // 存放位置
|
|
|
+ .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
+ .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
+ .specimenAmount(1) // 数量:1件
|
|
|
+ .size("1000") // 规格:未提供
|
|
|
+ .weight("1000.01") // 重量:未提供
|
|
|
+ .composition("") // 成分/化学式:未提供
|
|
|
+ .origin("张家口万全县") // 产地/发现地
|
|
|
+ .economize("河北") // 省:河北
|
|
|
+ .country("中国(China)") // 国家:中国
|
|
|
+ .preservedLayer("N/A") // 地质产状或层位:未提供
|
|
|
+ .meteoriteType("N/A") // 分类:未提供
|
|
|
+ .source(SourceEnum.DONATION.getSource()) // 来源:捐赠
|
|
|
+ .provider("化探63级校友") // 标本提供者
|
|
|
+ .specimenPrice(new BigDecimal("0.00")) // 单价:未提供
|
|
|
+ .acquisitionTime("2016/11/2") // 入藏时间
|
|
|
+ .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
+ .purpose("可作耐火材料原料") // 具体用途:可作耐火材料原料
|
|
|
+ .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态:展陈
|
|
|
+ .imageName("DSC00183.JPG") // 图片资料:图件名称
|
|
|
+ .description("N/A") // 文献资料
|
|
|
+ .notes("N/A") // 备注
|
|
|
+ .build()
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<FossilSpecimenImportExcelVO> getFossilTemplate() {
|
|
|
+ return Arrays.asList(
|
|
|
+ FossilSpecimenImportExcelVO.builder()
|
|
|
+ .specimenNumber("01522") // 标本编号
|
|
|
+ .assetNumber("20129103") // 资产号
|
|
|
+ .chineseName("贵州龙") // 中文名称
|
|
|
+ .englishName("Keichousaurus") // 外文名称
|
|
|
+ .specimenType(SpecimenTypeEnum.FOSSIL.getType()) // 标本类型:化石
|
|
|
+ .storageLocation("临展厅") // 存放位置
|
|
|
+ .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
+ .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
+ .specimenAmount(1) // 数量:1件
|
|
|
+ .size("1000cm") // 规格(cm)
|
|
|
+ .origin("兴义县顶效镇绿荫村") // 产地/发现地
|
|
|
+ .economize("贵州省") // 省
|
|
|
+ .country("中国(China)") // 国家
|
|
|
+ .era("晚三叠世(距今2.1亿年)") // 形成时代
|
|
|
+ .preservedLayer("上三叠统竹竿坡组") // 地质产状或层位
|
|
|
+ .meteoriteType("脊索动物门鳍龙目肿肋龙亚目贵州龙科") // 分类
|
|
|
+ .source(SourceEnum.PURCHASE.getSource()) // 来源
|
|
|
+ .provider("天娇雅石居") // 标本提供者
|
|
|
+ .specimenPrice(new BigDecimal("5900.01")) // 单价
|
|
|
+ .acquisitionTime("2012/12/20") // 入藏时间
|
|
|
+ .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途
|
|
|
+ .purpose("科学普及;对比研究") // 具体用途
|
|
|
+ .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态
|
|
|
+ .imageName("image1.jpg、image2.jpg、image3.jpg") // 图片资料
|
|
|
+ .description("这是一个化石标本") // 文献资料
|
|
|
+ .notes("备注信息") // 备注
|
|
|
+ .build()
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
+ private List<MeteoriteSpecimenImportExcelVO> getMeteoriteTemplate() {
|
|
|
+ return Arrays.asList(
|
|
|
+ MeteoriteSpecimenImportExcelVO.builder()
|
|
|
+ .specimenNumber("0011") // 标本编号
|
|
|
+ .assetNumber("M1001") // 资产号
|
|
|
+ .chineseName("月球陨石") // 中文名称
|
|
|
+ .englishName("Lunar Meteorite") // 外文名称
|
|
|
+ .specimenType(SpecimenTypeEnum.METEORITE.getType()) // 标本类型:陨石
|
|
|
+ .storageLocation("太空博物馆") // 存放位置
|
|
|
+ .preservationType(PreservationTypeEnum.SPECIMEN.getPreservationType()) // 保存类型:标本
|
|
|
+ .saveStatus(SaveStatusEnum.COMPLETE.getSaveStatus()) // 保存状态:完整
|
|
|
+ .specimenAmount(1) // 数量:1件
|
|
|
+ .size("8cm x 5cm x 4cm") // 规格
|
|
|
+ .weight("250g") // 重量
|
|
|
+ .composition("岩石和矿物的复合物") // 成分/化学式
|
|
|
+ .origin("月球") // 产地
|
|
|
+ .economize("外太空") // 省
|
|
|
+ .country("中国(China)") // 国家
|
|
|
+ .source(SourceEnum.PURCHASE.getSource()) // 来源
|
|
|
+ .provider("NASA") // 标本提供者
|
|
|
+ .specimenPrice(new BigDecimal("120000")) // 单价:120000元
|
|
|
+ .acquisitionTime("2015/3/5") // 入藏时间
|
|
|
+ .mainPurpose(MainPurposeEnum.RESERECH.getMainPurpose()) // 主要用途:科学研究
|
|
|
+ .purpose("研究月球成分,开发太空技术") // 具体用途
|
|
|
+ .collectionStatus(CollectionStatusEnum.EXHIBITION.getStatus()) // 馆藏状态
|
|
|
+ .imageName("moonrock.jpg") // 图片资料
|
|
|
+ .description("这是一块来自月球的陨石") // 文献资料
|
|
|
+ .notes("极其珍贵的标本") // 备注
|
|
|
+ .build()
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
@PostMapping("/import-specimen-with-images")
|
|
|
@Operation(summary = "导入标本及其图片")
|