From 8eefac7a9b2b6ac0e7b005e1ae4e3e0bdf8e3f7f Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Tue, 27 Jan 2026 15:02:46 +0800
Subject: [PATCH] 机构优化

---
 drone-service/drone-system/src/main/java/org/sxkj/system/mapper/DeptMapper.xml          |    1 +
 drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Region.java     |   12 ++++++++++++
 drone-service/drone-system/src/main/java/org/sxkj/system/controller/DeptController.java |    5 +++++
 drone-common/src/main/java/org/sxkj/common/constant/WordOrderConstant.java              |    4 ++++
 drone-common/src/main/java/org/sxkj/common/utils/OrderNumUtils.java                     |   16 +++++++++++++++-
 drone-service/drone-system/src/main/java/org/sxkj/system/mapper/RegionMapper.xml        |    1 +
 drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Dept.java       |   13 +++++++++++++
 7 files changed, 51 insertions(+), 1 deletions(-)

diff --git a/drone-common/src/main/java/org/sxkj/common/constant/WordOrderConstant.java b/drone-common/src/main/java/org/sxkj/common/constant/WordOrderConstant.java
index 6452733..a2257e0 100644
--- a/drone-common/src/main/java/org/sxkj/common/constant/WordOrderConstant.java
+++ b/drone-common/src/main/java/org/sxkj/common/constant/WordOrderConstant.java
@@ -8,6 +8,8 @@
 	String PATROL_TASK_PREFIX = "RW";
     //线索事件编号前缀
 	String EVENT_NUM_PREFIX  = "CE";
+	// 机构前缀
+	String ORG_PREFIX = "JG";
 
 	// 订单号redisKEY
 	String ORDER_REDIS_KEY = "wordOrderInfo";
@@ -15,4 +17,6 @@
 	String PATROL_TASK_KEY = "patrolTaskInfo";
 	//线索事件编号key
 	String EVENT_NUM_KEY = "eventNum";
+	// 机构编码
+	String ORG_CODE = "orgCode";
 }
diff --git a/drone-common/src/main/java/org/sxkj/common/utils/OrderNumUtils.java b/drone-common/src/main/java/org/sxkj/common/utils/OrderNumUtils.java
index 6c4c488..81ab5be 100644
--- a/drone-common/src/main/java/org/sxkj/common/utils/OrderNumUtils.java
+++ b/drone-common/src/main/java/org/sxkj/common/utils/OrderNumUtils.java
@@ -51,7 +51,7 @@
 	}
 
 	/**
-	 * 订单号生成
+	 * 订单号生成 带时分秒
 	 *
 	 * @param prefKey 缓存前缀key
 	 * @return 订单号生成
@@ -64,4 +64,18 @@
 		return currentTime + lastNum;
 	}
 
+	/**
+	 * 订单号生成 带时间
+	 *
+	 * @param prefKey 缓存前缀key
+	 * @return 订单号生成
+	 */
+	public static String initOrderNum2(String prefKey) {
+		Integer num = getRedisNumValue(prefKey);
+		String lastNum = formatDayOrderNumLast(3, num + 1);
+		Date date = new Date();
+		String currentTime = DateUtil.format(date, CommonConstant.yyyyMMdd);
+		return currentTime + lastNum;
+	}
+
 }
diff --git a/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Dept.java b/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Dept.java
index c22cdd2..c1cd8f9 100644
--- a/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Dept.java
+++ b/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Dept.java
@@ -20,13 +20,16 @@
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 实体类
@@ -131,4 +134,14 @@
 	@ApiModelProperty(value = "状态 0:禁用 1:启用")
 	private Integer status;
 
+	@DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+
+	@DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@ApiModelProperty(value = "更新时间")
+	private Date updateTime;
+
 }
diff --git a/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Region.java b/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Region.java
index c3cfecf..81689f6 100644
--- a/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Region.java
+++ b/drone-service-api/drone-system-api/src/main/java/org/sxkj/system/entity/Region.java
@@ -19,13 +19,16 @@
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 行政区划表实体类
@@ -142,5 +145,14 @@
 	@ApiModelProperty(value = "状态 0:禁用 1:启用 ")
 	private Integer status;
 
+	@DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+
+	@DateTimeFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss" )
+	@ApiModelProperty(value = "更新时间")
+	private Date updateTime;
 
 }
diff --git a/drone-service/drone-system/src/main/java/org/sxkj/system/controller/DeptController.java b/drone-service/drone-system/src/main/java/org/sxkj/system/controller/DeptController.java
index 9975960..99ed673 100644
--- a/drone-service/drone-system/src/main/java/org/sxkj/system/controller/DeptController.java
+++ b/drone-service/drone-system/src/main/java/org/sxkj/system/controller/DeptController.java
@@ -42,8 +42,10 @@
 import org.springblade.core.tool.utils.Func;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.multipart.MultipartFile;
+import org.sxkj.common.constant.WordOrderConstant;
 import org.sxkj.common.node.TreeStringNode;
 import org.sxkj.common.utils.HeaderUtils;
+import org.sxkj.common.utils.OrderNumUtils;
 import org.sxkj.system.cache.DictCache;
 import org.sxkj.system.cache.UserCache;
 import org.sxkj.system.entity.Dept;
@@ -201,6 +203,9 @@
 	@ApiLog("组织机构信息新增或修改")
 	public R submit(@Valid @RequestBody DeptAddParam dept) {
 		Dept deptEntity = Objects.requireNonNull(BeanUtil.copy(dept, Dept.class));
+		String times = OrderNumUtils.initOrderNum2(WordOrderConstant.ORG_CODE);
+		String deptCode = WordOrderConstant.ORG_PREFIX + times;
+		deptEntity.setDeptCode(deptCode);
 		if (deptService.submit(deptEntity)) {
 			CacheUtil.clear(SYS_CACHE);
 			CacheUtil.clear(SYS_CACHE, Boolean.FALSE);
diff --git a/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/DeptMapper.xml b/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/DeptMapper.xml
index 733ce17..5974fb0 100644
--- a/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/DeptMapper.xml
+++ b/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/DeptMapper.xml
@@ -293,6 +293,7 @@
         <if test="param2.areaCode!=null and param2.areaCode!=''">
             and bd.area_code = #{param2.areaCode}
         </if>
+            ORDER BY bd.create_time DESC
     </select>
 
     <select id="exportDept" resultType="org.sxkj.system.excel.DeptExcel">
diff --git a/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/RegionMapper.xml b/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/RegionMapper.xml
index e52dede..f720da2 100644
--- a/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/RegionMapper.xml
+++ b/drone-service/drone-system/src/main/java/org/sxkj/system/mapper/RegionMapper.xml
@@ -167,6 +167,7 @@
             <if test="param2.regionLevel!=null">
                 and region_level = #{param2.regionLevel}
             </if>
+                ORDER BY create_time DESC
         </where>
     </select>
 </mapper>

--
Gitblit v1.9.3