From 62eb499b0c969f246d3245d1429a97da4de1ce28 Mon Sep 17 00:00:00 2001
From: 钟日健 <arsn163@163.com>
Date: Mon, 01 Jun 2026 20:46:13 +0800
Subject: [PATCH] feat: 成绩查询增加年龄查询返回

---
 src/main/java/org/springblade/modules/accreditation/controller/AccreditationRecordsController.java |  164 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 117 insertions(+), 47 deletions(-)

diff --git a/src/main/java/org/springblade/modules/accreditation/controller/AccreditationRecordsController.java b/src/main/java/org/springblade/modules/accreditation/controller/AccreditationRecordsController.java
index 4e72d3a..57a731d 100644
--- a/src/main/java/org/springblade/modules/accreditation/controller/AccreditationRecordsController.java
+++ b/src/main/java/org/springblade/modules/accreditation/controller/AccreditationRecordsController.java
@@ -29,6 +29,7 @@
 import org.springblade.modules.accreditation.entity.AccreditationRecords;
 import org.springblade.modules.accreditation.service.AccreditationRecordsService;
 import org.springblade.modules.accreditation.vo.AccreditationRecordsVo;
+import org.springblade.modules.system.service.MyAsyncService;
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.core.io.Resource;
 import org.springframework.web.bind.annotation.*;
@@ -56,7 +57,7 @@
 	private final AccreditationRecordsService accreditationRecordsService;
 
 	private final IUserService userService;
-
+	private final MyAsyncService myAsyncService;
 
 	/**
 	 * 自定义分页
@@ -70,13 +71,40 @@
 	}
 
 	/**
-	 * 新增
+	 * 新增(补证)
 	 * @param accreditationRecords 制证记录信息对象
 	 */
 	@PostMapping("/save")
 	@ApiOperation(value = "新增", notes = "传入accreditationRecords")
 	public R save(@RequestBody AccreditationRecords accreditationRecords){
-		return R.data(accreditationRecordsService.save(accreditationRecords));
+		accreditationRecords.setCreateTime(new Date());
+		accreditationRecords.setStatus(1);
+		accreditationRecords.setAuditStatus(1);
+		boolean save = accreditationRecordsService.save(accreditationRecords);
+
+		//修改用户信息
+		User user = new User();
+		user.setId(accreditationRecords.getUserId());
+		user.setUpdateTime(new Date());
+		//修改为未制证状态
+		user.setUserType(7);
+		userService.updateById(user);
+		//内网同步
+		//内网新增
+		String s = "insert into sys_accreditation_records(id,user_id,create_time,create_user,status,type,audit_status) " +
+			"values(" + "'" + accreditationRecords.getId() + "'" + ","
+			+ "'" + accreditationRecords.getUserId() + "'" + ","
+			+ "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getCreateTime()) + "'" + ","
+			+ "'" + accreditationRecords.getCreateUser() +"'" + ","
+			+ "'" + accreditationRecords.getStatus() +"'" + ","
+			+ "'" + accreditationRecords.getType() +"'" + ","
+			+"'" + accreditationRecords.getAuditStatus() + "'" + ");" +
+		"update blade_user set user_type = " + "'" + user.getUserType() + "'" +
+			",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'" +
+			" " + "where id = " + "'" + user.getId() + "'";
+		//FtpUtil.sqlFileUpload(s);
+		myAsyncService.dataSync(s);
+		return R.data(save);
 	}
 
 
@@ -86,9 +114,17 @@
 	 * @param accreditationRecords 制证记录信息对象
 	 */
 	@PostMapping("/securityApply")
-	@ApiOperation(value = "新增", notes = "传入accreditationRecords")
 	public R securityApply(@RequestBody AccreditationRecordsVo accreditationRecords){
 		return R.data(accreditationRecordsService.securityApply(accreditationRecords));
+	}
+
+	/**
+	 * 批量修改为已制证
+	 * @param accreditationRecords 制证记录信息对象
+	 */
+	@PostMapping("/batchAccreditation")
+	public R batchAccreditation(@RequestBody AccreditationRecordsVo accreditationRecords){
+		return R.data(accreditationRecordsService.batchAccreditation(accreditationRecords));
 	}
 
 
@@ -106,22 +142,35 @@
 			//修改为未制证状态
 			AccreditationRecords records = accreditationRecordsService.getById(accreditationRecords);
 			User user = userService.getById(records.getUserId());
-			user.setUserType(7);
-			user.setUpdateTime(new Date());
-			//更新
-			userService.updateById(user);
+			if(accreditationRecords.getType()==2) {
+				user.setUserType(7);
+				user.setUpdateTime(new Date());
+				//更新
+				userService.updateById(user);
 
-			//内网同步
-			String s =
-				"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
-					",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
-					",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
-					",audit_user = " + accreditationRecords.getAuditUser() + " " +
-					"where id = " + "'" + accreditationRecords.getId() + "';" +
-				"update blade_user set user_type = " + user.getUserType() + "" +
-					",update_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "" +
-					"where id = " + "'" + user.getId() + "'";
-			FtpUtil.sqlFileUpload(s);
+				//内网同步
+				String s =
+					"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
+						",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
+						",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
+						",audit_user = " + accreditationRecords.getAuditUser() + " " +
+						"where id = " + "'" + accreditationRecords.getId() + "';" +
+						"update blade_user set user_type = " + user.getUserType() + "" +
+						",update_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "" +
+						"where id = " + "'" + user.getId() + "'";
+				//FtpUtil.sqlFileUpload(s);
+				myAsyncService.dataSync(s);
+			}else {
+				//内网同步
+				String s =
+					"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
+						",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
+						",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
+						",audit_user = " + accreditationRecords.getAuditUser() + " " +
+						"where id = " + "'" + accreditationRecords.getId() + "'";
+				//FtpUtil.sqlFileUpload(s);
+				myAsyncService.dataSync(s);
+			}
 		}else {
 			//内网同步
 			String s =
@@ -130,7 +179,7 @@
 					",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
 					",audit_user = " + accreditationRecords.getAuditUser() + " " +
 					"where id = " + "'" + accreditationRecords.getId() + "'";
-			FtpUtil.sqlFileUpload(s);
+			myAsyncService.dataSync(s);
 		}
 		//返回
 		return R.status(b);
@@ -153,25 +202,36 @@
 			accreditationRecordsService.updateById(accreditationRecords);
 			//审核通过
 			if (accreditationRecords.getAuditStatus()==2){
-				//修改为未制证状态
-				AccreditationRecords records = accreditationRecordsService.getById(id);
-				User user = userService.getById(records.getUserId());
-				user.setUserType(7);
-				user.setUpdateTime(new Date());
-				//更新
-				userService.updateById(user);
+				if (accreditationRecords.getType()==2) {
+					//修改为未制证状态
+					AccreditationRecords records = accreditationRecordsService.getById(id);
+					User user = userService.getById(records.getUserId());
+					user.setUserType(7);
+					user.setUpdateTime(new Date());
+					//更新
+					userService.updateById(user);
 
-				//内网同步
-				String s =
-					"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
-						",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
-						",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
-						",audit_user = " + accreditationRecords.getAuditUser() + " " +
-						"where id = " + "'" + accreditationRecords.getId() + "';" +
-					"update blade_user set user_type = " + user.getUserType() + "" +
-						",update_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "" +
-						"where id = " + "'" + user.getId() + "'";
-				FtpUtil.sqlFileUpload(s);
+					//内网同步
+					String s =
+						"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
+							",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
+							",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
+							",audit_user = " + accreditationRecords.getAuditUser() + " " +
+							"where id = " + "'" + accreditationRecords.getId() + "';" +
+							"update blade_user set user_type = " + user.getUserType() + "" +
+							",update_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "" +
+							"where id = " + "'" + user.getId() + "'";
+					myAsyncService.dataSync(s);
+				}else {
+					//内网同步
+					String s =
+						"update sys_accreditation_records set audit_status = " + accreditationRecords.getAuditStatus() + "" +
+							",audit_detail = " + accreditationRecords.getAuditDetail() + "" +
+							",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
+							",audit_user = " + accreditationRecords.getAuditUser() + " " +
+							"where id = " + "'" + accreditationRecords.getId() + "'";
+					myAsyncService.dataSync(s);
+				}
 			}else {
 				//内网同步
 				String s =
@@ -180,7 +240,7 @@
 						",audit_time = " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(accreditationRecords.getAuditTime()) + "" +
 						",audit_user = " + accreditationRecords.getAuditUser() + " " +
 						"where id = " + "'" + accreditationRecords.getId() + "'";
-				FtpUtil.sqlFileUpload(s);
+				myAsyncService.dataSync(s);
 			}
 		});
 		//返回
@@ -239,7 +299,7 @@
 	}
 
 	/**
-	 * 导出保安员证信息
+	 * 导出保安员证信息(上岗证)
 	 */
 	@GetMapping("export-security-paper")
 	public void exportSecurityPaper(AccreditationRecordsVo accreditationRecords, HttpServletResponse response) throws IOException {
@@ -338,14 +398,19 @@
 		if (list.size()<=7){
 			HSSFRow row = sheet.createRow(0);
 			row.setHeight((short) 1980);
+
 			HSSFRow row1 = sheet.createRow(1);
 			row1.setHeight((short) 300);
+
 			for (int i = 0; i < list.size(); i++) {
 				ExportSecurityPaperExcelVO checkWorkVo = list.get(i);
 				row1.createCell(i).setCellValue(checkWorkVo.getName());
 				//如果头像有
 				if (null != list.get(i).getAvatar() && list.get(i).getAvatar() != "") {
 					if (list.get(i).getAvatar().contains("http:")) {
+						//获取图片格式
+						int lastIndexOf = list.get(i).getAvatar().lastIndexOf(".");
+						String pictureType = list.get(i).getAvatar().substring(lastIndexOf + 1);
 						//画图的顶级管理器,一个sheet只能获取一个(一定要注意这点)
 						BufferedImage bufferImg = null;
 						//先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
@@ -356,7 +421,7 @@
 							e.printStackTrace();
 						}
 						try {
-							ImageIO.write(bufferImg, "jpg", byteArrayOut);
+							ImageIO.write(bufferImg, pictureType, byteArrayOut);
 						} catch (IOException e) {
 							e.printStackTrace();
 						}
@@ -367,9 +432,9 @@
 									0, // y缩放
 									1023, //最大1023
 									255, //最大255
-									(short) i,  //宽度占几格 0开始
+									(short) i,  //宽度 0开始
 									0, //在第几行
-									(short) i, //宽度占几格 0开始
+									(short) i, //宽度 0开始
 									0 //第几列
 								);
 						//插入图片
@@ -397,14 +462,16 @@
 			}
 			//判断余下的
 			if (excelList.size()>0){
-				rowNum++;
+				rowNum = rowNum + 2;
 				//写入表格
 				writeBookForEach(excelList,rowNum,workBook,sheet,patriarch);
 			}
 		}
 		//导出数据
-		response.setContentType("application/vnd.ms-excel; charset=UTF-8");
-		response.setHeader("Content-Disposition", "attachment;filename=" + "证书打印信息导出"+DateUtil.time() + ".xlsx");
+		response.setContentType("application/vnd.ms-excel");
+		response.setCharacterEncoding(org.apache.commons.codec.Charsets.UTF_8.name());
+		String fileName = URLEncoder.encode("证书打印信息导出"+ DateUtil.time(), Charsets.UTF_8.name());
+		response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
 		workBook.write(response.getOutputStream());
 	}
 
@@ -427,6 +494,9 @@
 			//如果头像有
 			if (null != list.get(i).getAvatar() && list.get(i).getAvatar() != "") {
 				if (list.get(i).getAvatar().contains("http:")) {
+					//获取图片格式
+					int lastIndexOf = list.get(i).getAvatar().lastIndexOf(".");
+					String pictureType = list.get(i).getAvatar().substring(lastIndexOf + 1);
 					//画图的顶级管理器,一个sheet只能获取一个(一定要注意这点)
 					BufferedImage bufferImg = null;
 					//先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
@@ -437,7 +507,7 @@
 						e.printStackTrace();
 					}
 					try {
-						ImageIO.write(bufferImg, "jpg", byteArrayOut);
+						ImageIO.write(bufferImg, pictureType, byteArrayOut);
 					} catch (IOException e) {
 						e.printStackTrace();
 					}

--
Gitblit v1.9.3