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/equipage/controller/GunController.java |  123 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 116 insertions(+), 7 deletions(-)

diff --git a/src/main/java/org/springblade/modules/equipage/controller/GunController.java b/src/main/java/org/springblade/modules/equipage/controller/GunController.java
index 97c033a..5f57681 100644
--- a/src/main/java/org/springblade/modules/equipage/controller/GunController.java
+++ b/src/main/java/org/springblade/modules/equipage/controller/GunController.java
@@ -1,18 +1,36 @@
 package org.springblade.modules.equipage.controller;
 
+import com.alibaba.excel.EasyExcel;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
+import org.apache.commons.codec.Charsets;
+import org.springblade.common.excel.RowWriteHandler;
 import org.springblade.common.utils.arg;
+import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.FTP.FtpUtil;
 import org.springblade.modules.equipage.entity.Gun;
+import org.springblade.modules.equipage.excel.GunExcel;
+import org.springblade.modules.equipage.excel.GunImporter;
 import org.springblade.modules.equipage.service.GunService;
 import org.springblade.modules.equipage.vo.GunVo;
+import org.springblade.modules.system.service.MyAsyncService;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 /**
  * @author zhongrj
@@ -25,11 +43,13 @@
 public class GunController {
 
 	private final GunService gunService;
+	private final MyAsyncService myAsyncService;
 
 	/**
 	 * 自定义分页
+	 *
 	 * @param query page,size
-	 * @param gun 枪支信息对象
+	 * @param gun   枪支信息对象
 	 */
 	@GetMapping("/page")
 	public R<IPage<GunVo>> page(GunVo gun, Query query) {
@@ -39,6 +59,7 @@
 
 	/**
 	 * 新增
+	 *
 	 * @param gun 枪支信息对象
 	 */
 	@PostMapping("/save")
@@ -49,6 +70,7 @@
 
 	/**
 	 * 修改
+	 *
 	 * @param gun 枪支信息对象
 	 */
 	@PostMapping("/update")
@@ -58,29 +80,77 @@
 
 	/**
 	 * 新增或修改
+	 *
 	 * @param gun 枪支信息对象
 	 */
 	@PostMapping("/submit")
-	public R submit(@RequestBody Gun gun) throws Exception {
-		if (gun.getId()==null){
-			arg arg = new arg();
-			arg.test01(arg.url+"/gun/save",gun);
+	public R submit(@RequestBody Gun gun) {
+		boolean status = false;
+		if (null == gun.getId()) {
+			//新增
+			status = gunService.save(gun);
+			if (status) {
+				//数据同步
+				String s1 =
+					"insert into sys_gun(id,issue_unit,card_number,gun_mode," +
+						"dept_id,person_in_charge,issue_time,valid_time,jurisdiction,card_no) " +
+						"values(" + "'" + gun.getId() + "'" + "," +
+						"'" + gun.getIssueUnit() + "'" + "," +
+						"'" + gun.getCardNumber() + "'" + "," +
+						"'" + gun.getGunMode() + "'" + "," +
+						"'" + gun.getDeptId() + "'" + "," +
+						"'" + gun.getPersonInCharge() + "'" + "," +
+						"'" + new SimpleDateFormat("yyyy-MM-dd").format(gun.getIssueTime()) + "'" + "," +
+						"'" + new SimpleDateFormat("yyyy-MM-dd").format(gun.getValidTime()) + "'" + "," +
+						"'" + gun.getCardNo() + "'" + "," +
+						"'" + gun.getJurisdiction() + "'" + ")";
+				//FtpUtil.sqlFileUpload(s1);
+				myAsyncService.dataSync(s1);
+			}
+		} else {
+			//修改
+			status = gunService.updateById(gun);
+			if (status) {
+				//内网同步
+				String s1 =
+					"update sys_gun set issue_unit = " + "'" + gun.getIssueUnit() + "'" +
+						",card_number = " + "'" + gun.getCardNumber() + "'" +
+						",gun_mode = " + "'" + gun.getGunMode() + "'" +
+						",dept_id = " + "'" + gun.getDeptId() + "'" +
+						",person_in_charge = " + "'" + gun.getJurisdiction() + "'" +
+						",issue_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(gun.getIssueTime()) + "'" +
+						",valid_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(gun.getValidTime()) + "'" +
+						",jurisdiction = " + "'" + gun.getJurisdiction() + "'" +
+						",card_no = " + "'" + gun.getCardNo() + "'" +
+						" " + "where id = " + "'" + gun.getId() + "'";
+				//FtpUtil.sqlFileUpload(s1);
+				myAsyncService.dataSync(s1);
+			}
 		}
-		return R.status(gunService.saveOrUpdate(gun));
+		return R.status(status);
 	}
 
 	/**
 	 * 删除
+	 *
 	 * @param ids 枪支信息ids 数组
 	 */
 	@PostMapping("/remove")
 	public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
-		arg.sendPostRemoveByIds(arg.url+"/gun/remove",ids);
+		//内网删除
+		List<Long> list = Func.toLongList(ids);
+		list.forEach(id -> {
+			//内网同步
+			String s1 = "delete from sys_gun where id = " + "'" + id + "'";
+			//FtpUtil.sqlFileUpload(s1);
+			myAsyncService.dataSync(s1);
+		});
 		return R.status(gunService.removeByIds(Func.toLongList(ids)));
 	}
 
 	/**
 	 * 详情
+	 *
 	 * @param gun 枪支信息对象
 	 */
 	@GetMapping("/detail")
@@ -90,4 +160,43 @@
 		return R.data(detail);
 	}
 
+
+	/**
+	 * 导入枪支信息, excel
+	 */
+	@PostMapping("import-gun")
+	public R importGun(MultipartFile file, Integer isCovered, String deptId) {
+		GunImporter gunImporter = new GunImporter(gunService, false, deptId);
+		ExcelUtil.save(file, gunImporter, GunExcel.class);
+		return R.success("操作成功");
+	}
+
+	/**
+	 * 枪支导出模板
+	 */
+	@GetMapping("export-template-gun")
+	@ApiOperation(value = "导出模板")
+	public void exportGun(HttpServletResponse response) throws IOException {
+		List<GunExcel> list = new ArrayList<>();
+		GunExcel gunExcel1 = new GunExcel();
+		gunExcel1.setDeptId("xxx保安公司");
+		gunExcel1.setCardNumber("x****");
+		gunExcel1.setGunMode("x****");
+		gunExcel1.setIssueUnit("*****");
+		gunExcel1.setPersonInCharge("张三");
+		gunExcel1.setCardNo("360112**********");
+		list.add(gunExcel1);
+		String fileName = null;
+		try {
+			response.setContentType("application/vnd.ms-excel");
+			response.setCharacterEncoding(org.apache.commons.codec.Charsets.UTF_8.name());
+			fileName = URLEncoder.encode("枪支导入数据模板" + DateUtil.time(), Charsets.UTF_8.name());
+			response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+			//修改单元格格式为文本格式
+			EasyExcel.write(response.getOutputStream(), GunExcel.class).sheet("枪支数据表").registerWriteHandler(new RowWriteHandler()).doWrite(list);
+		} catch (Throwable var6) {
+			throw var6;
+		}
+	}
+
 }

--
Gitblit v1.9.3