From 362dfdd63912552114f89c731ec650a1af3909b4 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期三, 19 三月 2025 13:41:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 db/数据库产品化设计.pdma.json                                                                                                      |  436 +++++++++++++++++++++++++++++++--
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysBusinessCodeSeqMapper.java             |   14 +
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysBusinessCodeRuleController.java    |    3 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamProcessParametersController.java                         |    9 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeRuleService.java         |    7 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeRule.java                  |    8 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeSeq.java                   |   71 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamProcessParameters.java                                       |   11 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeRuleServiceImpl.java |  111 ++++++++
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysBusinessCodeSeqMapper.xml          |    5 
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeSeqService.java          |   23 +
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeSeqServiceImpl.java  |   58 ++++
 12 files changed, 714 insertions(+), 42 deletions(-)

diff --git "a/db/\346\225\260\346\215\256\345\272\223\344\272\247\345\223\201\345\214\226\350\256\276\350\256\241.pdma.json" "b/db/\346\225\260\346\215\256\345\272\223\344\272\247\345\223\201\345\214\226\350\256\276\350\256\241.pdma.json"
index af1f06a..1b39343 100644
--- "a/db/\346\225\260\346\215\256\345\272\223\344\272\247\345\223\201\345\214\226\350\256\276\350\256\241.pdma.json"
+++ "b/db/\346\225\260\346\215\256\345\272\223\344\272\247\345\223\201\345\214\226\350\256\276\350\256\241.pdma.json"
@@ -4,7 +4,7 @@
   "avatar": "",
   "version": "4.9.2",
   "createdTime": "2025-3-10 16:38:19",
-  "updatedTime": "2025-3-14 17:48:33",
+  "updatedTime": "2025-3-19 13:16:28",
   "dbConns": [],
   "profile": {
     "default": {
@@ -620,7 +620,7 @@
         "freeze": false
       }
     ],
-    "modelType": "modalAll",
+    "modelType": "modalGroup",
     "recentColors": [
       "#d148d1",
       "#ce4bce",
@@ -2810,6 +2810,24 @@
           "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
           "id": "66A13E43-E49B-42F5-B3E2-3AF22E0A3D07",
           "uiHint": null
+        },
+        {
+          "defKey": "parameter_category",
+          "defName": "鍙傛暟鍒嗙被",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
+          "id": "D724F162-FAB5-448E-B0A1-14AD0C5A8CE9"
         }
       ],
       "correlations": [],
@@ -14782,12 +14800,12 @@
           "refDict": "",
           "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
           "extProps": {},
-          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "domain": "BE09D493-E183-402D-ACC4-EEA21EB35B8E",
           "id": "8E2E374D-26D3-43F7-B21D-9F426E598DAA"
         },
         {
           "defKey": "file_name",
-          "defName": "鏂囦欢鍘熷鍚嶇О",
+          "defName": "鏂囦欢鍚嶇О",
           "comment": "",
           "type": "",
           "len": "",
@@ -14820,24 +14838,6 @@
           "extProps": {},
           "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
           "id": "7DD92935-AF34-4DCF-8AF7-310BF043C96C"
-        },
-        {
-          "defKey": "full_path",
-          "defName": "鏂囦欢鍏ㄨ矾寰�",
-          "comment": "",
-          "type": "",
-          "len": "",
-          "scale": "",
-          "primaryKey": false,
-          "notNull": false,
-          "autoIncrement": false,
-          "defaultValue": "",
-          "hideInGraph": false,
-          "refDict": "",
-          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
-          "extProps": {},
-          "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
-          "id": "13A5EDE6-6902-4DFE-95E6-7D853D1CE808"
         },
         {
           "defKey": "file_suffix",
@@ -15248,7 +15248,7 @@
         },
         {
           "defKey": "day_format",
-          "defName": "澶� 缂栫爜鏍煎紡",
+          "defName": "澶╃紪鐮佹牸寮�",
           "comment": "",
           "type": "",
           "len": "",
@@ -15281,10 +15281,355 @@
           "extProps": {},
           "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
           "id": "81BF4261-D1BC-494E-981B-7B069AAFAD6A"
+        }
+      ],
+      "correlations": [],
+      "indexes": [],
+      "type": "P"
+    },
+    {
+      "id": "C0BBEF88-3FC1-443D-AC9D-EC780080BC93",
+      "env": {
+        "base": {
+          "nameSpace": "",
+          "codeRoot": ""
+        }
+      },
+      "defKey": "sys_business_code_seq",
+      "defName": "涓氬姟缂栫爜鐢熸垚搴忓垪",
+      "comment": "",
+      "properties": {
+        "partitioned by": "(date string)",
+        "row format delimited": "",
+        "fields terminated by ','": "",
+        "collection items terminated by '-'": "",
+        "map keys terminated by ':'": "",
+        "store as textfile;": ""
+      },
+      "sysProps": {
+        "nameTemplate": "{defKey}[{defName}]"
+      },
+      "notes": {},
+      "headers": [
+        {
+          "refKey": "hideInGraph",
+          "hideInGraph": true
         },
         {
-          "defKey": "current_num",
-          "defName": "褰撳墠搴忓彿",
+          "refKey": "defKey",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "defName",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "primaryKey",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "notNull",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "autoIncrement",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "domain",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "type",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "len",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "scale",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "comment",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "refDict",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "defaultValue",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "isStandard",
+          "freeze": false,
+          "hideInGraph": false
+        },
+        {
+          "refKey": "uiHint",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "extProps",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr1",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr2",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr3",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr4",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr5",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr6",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr7",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr8",
+          "freeze": false,
+          "hideInGraph": true
+        },
+        {
+          "refKey": "attr9",
+          "freeze": false,
+          "hideInGraph": true
+        }
+      ],
+      "fields": [
+        {
+          "defKey": "id",
+          "defName": "涓婚敭",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": true,
+          "notNull": true,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
+          "id": "9DD983C4-9AB5-4A9F-B7CA-0203B1E580AD"
+        },
+        {
+          "defKey": "create_by",
+          "defName": "鍒涘缓浜�",
+          "comment": "",
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": true,
+          "refDict": "",
+          "uiHint": "",
+          "id": "8FD1D5E4-2A2B-4052-828A-C1C0AB1BD31E",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
+        },
+        {
+          "defKey": "create_time",
+          "defName": "鍒涘缓鏃堕棿",
+          "comment": "",
+          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": true,
+          "refDict": "",
+          "uiHint": "",
+          "id": "D59D8049-B400-4650-AF75-67EF1B60B5AC",
+          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
+        },
+        {
+          "defKey": "update_by",
+          "defName": "鏇存柊浜�",
+          "comment": "",
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": true,
+          "refDict": "",
+          "uiHint": "",
+          "id": "56CA7F2E-C1D6-47B9-BB08-2A3E442D3778",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
+        },
+        {
+          "defKey": "update_time",
+          "defName": "鏇存柊鏃堕棿",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": true,
+          "domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
+          "refDict": "",
+          "extProps": {},
+          "notes": {},
+          "attr1": "",
+          "attr2": "",
+          "attr3": "",
+          "attr4": "",
+          "attr5": "",
+          "attr6": "",
+          "attr7": "",
+          "attr8": "",
+          "attr9": "",
+          "id": "B415329C-1A9B-4992-9164-138B6BC194F4",
+          "baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
+        },
+        {
+          "defKey": "rule_id",
+          "defName": "瑙勫垯缂栫爜",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "16120F75-6AA7-4483-868D-F07F511BB081",
+          "id": "1361B964-C35F-4FBF-808F-7FFD289A133E"
+        },
+        {
+          "defKey": "prefix",
+          "defName": "鍓嶇紑",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "id": "223B017A-F289-4FE4-AF2B-BC9847ECF977"
+        },
+        {
+          "defKey": "current_year",
+          "defName": "褰撳墠骞翠唤",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "id": "F103D770-A2A4-4E1F-9D80-6768C7431AD7"
+        },
+        {
+          "defKey": "current_month",
+          "defName": "褰撳墠鏈堜唤",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "id": "ABF01002-A024-417D-8765-75FD12826579"
+        },
+        {
+          "defKey": "current_day",
+          "defName": "褰撳墠澶�",
+          "comment": "",
+          "type": "",
+          "len": "",
+          "scale": "",
+          "primaryKey": false,
+          "notNull": false,
+          "autoIncrement": false,
+          "defaultValue": "",
+          "hideInGraph": false,
+          "refDict": "",
+          "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
+          "extProps": {},
+          "domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
+          "id": "35896231-A3CC-44D7-8B39-06DB21B05DC7"
+        },
+        {
+          "defKey": "current_seq",
+          "defName": "褰撳墠搴忓垪鍊�",
           "comment": "",
           "type": "",
           "len": "",
@@ -15298,7 +15643,7 @@
           "baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
           "extProps": {},
           "domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
-          "id": "C65F1569-4D7D-4400-A25D-492661AD94B4"
+          "id": "20C01EF4-19BC-40DE-8BB6-CC1915FD8AC2"
         }
       ],
       "correlations": [],
@@ -15938,6 +16283,39 @@
           "id": "6C803912-BF5E-404E-8ABB-6CB5C8C42BA9"
         }
       ]
+    },
+    {
+      "defKey": "process_parameters_category",
+      "defName": "宸ヨ壓鍙傛暟鍒嗙被",
+      "sort": "",
+      "intro": "",
+      "id": "3AA9C9FB-86F2-4836-83EB-E2F8B2E540E7",
+      "items": [
+        {
+          "defKey": "1",
+          "defName": "鍔犲伐鑼冨洿",
+          "sort": "",
+          "parentKey": "",
+          "intro": "",
+          "enabled": true,
+          "attr1": "",
+          "attr2": "",
+          "attr3": "",
+          "id": "81046783-462D-4D8E-995A-9BA2106B8476"
+        },
+        {
+          "defKey": "2",
+          "defName": "褰綅鍏樊",
+          "sort": "",
+          "parentKey": "",
+          "intro": "",
+          "enabled": true,
+          "attr1": "",
+          "attr2": "",
+          "attr3": "",
+          "id": "6D24525A-2701-47DB-976C-424B244268D0"
+        }
+      ]
     }
   ],
   "viewGroups": [
@@ -15980,7 +16358,8 @@
         "804A08AE-C5BE-49C9-BCA3-B6521C236EE1",
         "918CE0CD-78C7-4BEF-95F3-BAE2C4F828ED",
         "378CF92C-B63B-4D7F-84DF-5D2F84CE4753",
-        "DD05C32B-EF6C-40DB-A6BB-3A9E3AD75E65"
+        "DD05C32B-EF6C-40DB-A6BB-3A9E3AD75E65",
+        "C0BBEF88-3FC1-443D-AC9D-EC780080BC93"
       ],
       "refViews": [],
       "refDiagrams": [],
@@ -15993,7 +16372,8 @@
         "7C1D42A1-3178-484D-800D-AF47EC1B2836",
         "26337992-3648-404E-AB89-521D93C6F5DB",
         "401E137A-715C-4AF4-A54C-4EDCB8EB44A6",
-        "9F5E1ECC-9826-4C0B-BC55-725E0ADCA2F6"
+        "9F5E1ECC-9826-4C0B-BC55-725E0ADCA2F6",
+        "3AA9C9FB-86F2-4836-83EB-E2F8B2E540E7"
       ],
       "id": "8270D4EA-5A4E-46A2-B341-B84890AD8F5F"
     }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamProcessParametersController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamProcessParametersController.java
index d5aefc7..42b8a38 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamProcessParametersController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamProcessParametersController.java
@@ -9,6 +9,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.util.oConvertUtils;
@@ -20,6 +21,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -48,6 +50,9 @@
 public class EamProcessParametersController extends JeecgController<EamProcessParameters, IEamProcessParametersService> {
 	@Autowired
 	private IEamProcessParametersService eamProcessParametersService;
+
+	@Autowired
+	private ISysBusinessCodeRuleService businessCodeRuleService;
 	
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
@@ -66,6 +71,7 @@
 								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
 								   HttpServletRequest req) {
 		QueryWrapper<EamProcessParameters> queryWrapper = QueryGenerator.initQueryWrapper(eamProcessParameters, req.getParameterMap());
+		queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
 		Page<EamProcessParameters> page = new Page<EamProcessParameters>(pageNo, pageSize);
 		IPage<EamProcessParameters> pageList = eamProcessParametersService.page(page, queryWrapper);
 		return Result.OK(pageList);
@@ -81,6 +87,9 @@
 	@ApiOperation(value="宸ュ簭鍙傛暟缁存姢-娣诲姞", notes="宸ュ簭鍙傛暟缁存姢-娣诲姞")
 	@PostMapping(value = "/add")
 	public Result<?> add(@RequestBody EamProcessParameters eamProcessParameters) {
+		String codeSeq = businessCodeRuleService.generateBusinessCodeSeq("ProcessParametersRule");
+		eamProcessParameters.setParameterCode(codeSeq);
+		eamProcessParameters.setDelFlag(CommonConstant.DEL_FLAG_0);
 		eamProcessParametersService.save(eamProcessParameters);
 		return Result.OK("娣诲姞鎴愬姛锛�");
 	}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamProcessParameters.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamProcessParameters.java
index c817b17..f313c9f 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamProcessParameters.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamProcessParameters.java
@@ -8,6 +8,7 @@
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.io.Serializable;
@@ -30,34 +31,32 @@
     @ApiModelProperty(value = "涓婚敭")
 	private String id;
 	/**鍒涘缓浜�*/
-	@Excel(name = "鍒涘缓浜�", width = 15)
     @ApiModelProperty(value = "鍒涘缓浜�")
 	private String createBy;
 	/**鍒涘缓鏃堕棿*/
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
 	private Date createTime;
 	/**鏇存柊浜�*/
-	@Excel(name = "鏇存柊浜�", width = 15)
     @ApiModelProperty(value = "鏇存柊浜�")
 	private String updateBy;
 	/**鏇存柊鏃堕棿*/
     @ApiModelProperty(value = "鏇存柊鏃堕棿")
 	private Date updateTime;
 	/**鍒犻櫎鏍囪*/
-	@Excel(name = "鍒犻櫎鏍囪", width = 15)
     @ApiModelProperty(value = "鍒犻櫎鏍囪")
 	private Integer delFlag;
 	/**鍙傛暟缂栫爜*/
-	@Excel(name = "鍙傛暟缂栫爜", width = 15)
+	@Excel(name = "鍙傛暟缂栫爜", width = 25)
     @ApiModelProperty(value = "鍙傛暟缂栫爜")
 	private String parameterCode;
 	/**鍙傛暟鍚嶇О*/
-	@Excel(name = "鍙傛暟鍚嶇О", width = 15)
+	@Excel(name = "鍙傛暟鍚嶇О", width = 25)
     @ApiModelProperty(value = "鍙傛暟鍚嶇О")
 	private String parameterName;
 	/**鍙傛暟鍒嗙被*/
-	@Excel(name = "鍙傛暟鍒嗙被", width = 15)
+	@Excel(name = "鍙傛暟鍒嗙被", width = 15, dicCode = "process_parameters_category")
     @ApiModelProperty(value = "鍙傛暟鍒嗙被")
+	@Dict(dicCode = "process_parameters_category")
 	private String parameterCategory;
 	/**璁¢噺鍗曚綅*/
 	@Excel(name = "璁¢噺鍗曚綅", width = 15)
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysBusinessCodeRuleController.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysBusinessCodeRuleController.java
index c662045..32a4845 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysBusinessCodeRuleController.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysBusinessCodeRuleController.java
@@ -7,6 +7,7 @@
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.modules.system.entity.SysBusinessCodeRule;
@@ -48,6 +49,7 @@
 								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
 								   HttpServletRequest req) {
 		QueryWrapper<SysBusinessCodeRule> queryWrapper = QueryGenerator.initQueryWrapper(sysBusinessCodeRule, req.getParameterMap());
+		queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
 		Page<SysBusinessCodeRule> page = new Page<SysBusinessCodeRule>(pageNo, pageSize);
 		IPage<SysBusinessCodeRule> pageList = sysBusinessCodeRuleService.page(page, queryWrapper);
 		return Result.OK(pageList);
@@ -63,6 +65,7 @@
 	@ApiOperation(value="涓氬姟缂栫爜瑙勫垯-娣诲姞", notes="涓氬姟缂栫爜瑙勫垯-娣诲姞")
 	@PostMapping(value = "/add")
 	public Result<?> add(@RequestBody SysBusinessCodeRule sysBusinessCodeRule) {
+		sysBusinessCodeRule.setDelFlag(CommonConstant.DEL_FLAG_0);
 		sysBusinessCodeRuleService.save(sysBusinessCodeRule);
 		return Result.OK("娣诲姞鎴愬姛锛�");
 	}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeRule.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeRule.java
index d87f243..4e1806d 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeRule.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeRule.java
@@ -69,15 +69,11 @@
     @ApiModelProperty(value = "鏈堜唤缂栫爜鏍煎紡")
 	private String monthFormat;
 	/**澶� 缂栫爜鏍煎紡*/
-	@Excel(name = "澶� 缂栫爜鏍煎紡", width = 15)
-    @ApiModelProperty(value = "澶� 缂栫爜鏍煎紡")
+	@Excel(name = "澶╃紪鐮佹牸寮�", width = 15)
+    @ApiModelProperty(value = "澶╃紪鐮佹牸寮�")
 	private String dayFormat;
 	/**搴忓彿闀垮害*/
 	@Excel(name = "搴忓彿闀垮害", width = 15)
     @ApiModelProperty(value = "搴忓彿闀垮害")
 	private Integer seqLength;
-	/**褰撳墠搴忓彿*/
-	@Excel(name = "褰撳墠搴忓彿", width = 15)
-    @ApiModelProperty(value = "褰撳墠搴忓彿")
-	private Integer currentNum;
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeSeq.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeSeq.java
new file mode 100644
index 0000000..0217956
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysBusinessCodeSeq.java
@@ -0,0 +1,71 @@
+package org.jeecg.modules.system.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: 涓氬姟缂栫爜鐢熸垚搴忓垪
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Data
+@TableName("sys_business_code_seq")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="sys_business_code_seq瀵硅薄", description="涓氬姟缂栫爜鐢熸垚搴忓垪")
+public class SysBusinessCodeSeq implements Serializable {
+    
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+	private String id;
+	/**鍒涘缓浜�*/
+	@Excel(name = "鍒涘缓浜�", width = 15)
+    @ApiModelProperty(value = "鍒涘缓浜�")
+	private String createBy;
+	/**鍒涘缓鏃堕棿*/
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+	private Date createTime;
+	/**鏇存柊浜�*/
+	@Excel(name = "鏇存柊浜�", width = 15)
+    @ApiModelProperty(value = "鏇存柊浜�")
+	private String updateBy;
+	/**鏇存柊鏃堕棿*/
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+	private Date updateTime;
+	/**瑙勫垯缂栫爜*/
+	@Excel(name = "瑙勫垯缂栫爜", width = 15)
+    @ApiModelProperty(value = "瑙勫垯缂栫爜")
+	private String ruleId;
+	/**鍓嶇紑*/
+	@Excel(name = "鍓嶇紑", width = 15)
+    @ApiModelProperty(value = "鍓嶇紑")
+	private String prefix;
+	/**褰撳墠骞翠唤*/
+	@Excel(name = "褰撳墠骞翠唤", width = 15)
+    @ApiModelProperty(value = "褰撳墠骞翠唤")
+	private String currentYear;
+	/**褰撳墠鏈堜唤*/
+	@Excel(name = "褰撳墠鏈堜唤", width = 15)
+    @ApiModelProperty(value = "褰撳墠鏈堜唤")
+	private String currentMonth;
+	/**褰撳墠澶�*/
+	@Excel(name = "褰撳墠澶�", width = 15)
+    @ApiModelProperty(value = "褰撳墠澶�")
+	private String currentDay;
+	/**褰撳墠搴忓垪鍊�*/
+	@Excel(name = "褰撳墠搴忓垪鍊�", width = 15)
+    @ApiModelProperty(value = "褰撳墠搴忓垪鍊�")
+	private Integer currentSeq;
+}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysBusinessCodeSeqMapper.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysBusinessCodeSeqMapper.java
new file mode 100644
index 0000000..eed233e
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysBusinessCodeSeqMapper.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.system.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.system.entity.SysBusinessCodeSeq;
+
+/**
+ * @Description: 涓氬姟缂栫爜鐢熸垚搴忓垪
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface SysBusinessCodeSeqMapper extends BaseMapper<SysBusinessCodeSeq> {
+
+}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysBusinessCodeSeqMapper.xml b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysBusinessCodeSeqMapper.xml
new file mode 100644
index 0000000..e7feff9
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysBusinessCodeSeqMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.system.mapper.SysBusinessCodeSeqMapper">
+
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeRuleService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeRuleService.java
index f1179ee..7e2ab06 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeRuleService.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeRuleService.java
@@ -10,5 +10,10 @@
  * @Version: V1.0
  */
 public interface ISysBusinessCodeRuleService extends IService<SysBusinessCodeRule> {
-
+    /**
+     * 鐢熸垚涓氬姟缂栫爜瀵瑰簲鐨勬祦姘村彿
+     * @param businessCode 涓氬姟缂栫爜
+     * @return
+     */
+    String generateBusinessCodeSeq(String businessCode);
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeSeqService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeSeqService.java
new file mode 100644
index 0000000..5c26ba4
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysBusinessCodeSeqService.java
@@ -0,0 +1,23 @@
+package org.jeecg.modules.system.service;
+
+import org.jeecg.modules.system.entity.SysBusinessCodeSeq;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 涓氬姟缂栫爜鐢熸垚搴忓垪
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+public interface ISysBusinessCodeSeqService extends IService<SysBusinessCodeSeq> {
+    /**
+     * 鑾峰彇褰撳墠搴忓垪鐢熸垚璁板綍
+     * @param ruleId 瑙勫垯Id
+     * @param prefix 鍓嶇紑
+     * @param yearValue 骞翠唤
+     * @param monthValue 鏈堜唤
+     * @param dayValue 澶�
+     * @return
+     */
+    SysBusinessCodeSeq queryByParams(String ruleId, String prefix, String yearValue, String monthValue, String dayValue);
+}
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeRuleServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeRuleServiceImpl.java
index 3a3505e..ea9e380 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeRuleServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeRuleServiceImpl.java
@@ -1,19 +1,128 @@
 package org.jeecg.modules.system.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.apache.commons.lang3.StringUtils;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.modules.system.entity.SysBusinessCodeRule;
+import org.jeecg.modules.system.entity.SysBusinessCodeSeq;
 import org.jeecg.modules.system.mapper.SysBusinessCodeRuleMapper;
 import org.jeecg.modules.system.service.ISysBusinessCodeRuleService;
+import org.jeecg.modules.system.service.ISysBusinessCodeSeqService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.util.List;
 
 /**
  * @Description: 涓氬姟缂栫爜瑙勫垯
  * @Author: jeecg-boot
- * @Date:   2025-03-17
+ * @Date: 2025-03-17
  * @Version: V1.0
  */
 @Service
 public class SysBusinessCodeRuleServiceImpl extends ServiceImpl<SysBusinessCodeRuleMapper, SysBusinessCodeRule> implements ISysBusinessCodeRuleService {
 
+    @Resource
+    private SysBusinessCodeRuleMapper businessCodeRuleMapper;
+
+    @Autowired
+    private ISysBusinessCodeSeqService businessCodeSeqService;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String generateBusinessCodeSeq(String businessCode) {
+        //鏌ヨ鐢熸垚瑙勫垯
+        LambdaQueryWrapper<SysBusinessCodeRule> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(SysBusinessCodeRule::getBusinessCode, businessCode);
+        queryWrapper.eq(SysBusinessCodeRule::getDelFlag, CommonConstant.DEL_FLAG_0);
+        List<SysBusinessCodeRule> list = businessCodeRuleMapper.selectList(queryWrapper);
+        if (CollectionUtil.isEmpty(list)) {
+            throw new JeecgBootException("鏈煡璇㈠埌閰嶇疆鐨勪笟鍔$紪鐮佺敓鎴愯鍒欙紝璇疯仈绯荤鐞嗗憳妫�鏌ワ紒");
+        }
+        if (list.size() > 1) {
+            throw new JeecgBootException("鏌ヨ鍒板涓厤缃殑涓氬姟缂栫爜鐢熸垚瑙勫垯锛岃鑱旂郴绠$悊鍛樻鏌ワ紒");
+        }
+        SysBusinessCodeRule businessCodeRule = list.get(0);
+        String prefix = businessCodeRule.getPrefix();
+        String yearFormat = businessCodeRule.getYearFormat() == null ? "" : businessCodeRule.getYearFormat().trim();
+        String monthFormat = businessCodeRule.getMonthFormat() == null ? "" : businessCodeRule.getMonthFormat().trim();
+        String dayFormat = businessCodeRule.getDayFormat() == null ? "" : businessCodeRule.getDayFormat().trim();
+        Integer seqLength = businessCodeRule.getSeqLength();
+        String formatter = yearFormat + "-" + monthFormat + "-" + dayFormat;
+        //杞崲褰撳墠鏃ユ湡瀵瑰簲鐨勭敓鎴愬簭鍒�
+        String[] currentDate = LocalDate.now().format(DateTimeFormatter.ofPattern(formatter)).split("-");
+        int i = 0;
+        if (StringUtils.isNotBlank(yearFormat)) {
+            yearFormat = currentDate[i];
+            i++;
+        }else {
+            yearFormat = null;
+        }
+        if (StringUtils.isNotBlank(monthFormat)) {
+            monthFormat = currentDate[i];
+            i++;
+        }else {
+            monthFormat = null;
+        }
+        if (StringUtils.isNotBlank(dayFormat)) {
+            dayFormat = currentDate[i];
+        }else {
+            dayFormat = null;
+        }
+        //鏌ヨ鐢熸垚搴忓垪
+        SysBusinessCodeSeq sysBusinessCodeSeq = businessCodeSeqService.queryByParams(businessCodeRule.getId(), prefix, yearFormat, monthFormat, dayFormat);
+        if(sysBusinessCodeSeq == null){
+            //鏂板鐢熸垚搴忓垪
+            sysBusinessCodeSeq = new SysBusinessCodeSeq();
+            sysBusinessCodeSeq.setRuleId(businessCodeRule.getId());
+            sysBusinessCodeSeq.setPrefix(prefix);
+            sysBusinessCodeSeq.setCurrentYear(yearFormat);
+            sysBusinessCodeSeq.setCurrentMonth(monthFormat);
+            sysBusinessCodeSeq.setCurrentDay(dayFormat);
+            sysBusinessCodeSeq.setCurrentSeq(1);
+            businessCodeSeqService.save(sysBusinessCodeSeq);
+        }else {
+            //鏇存柊鐢熸垚搴忓垪
+            sysBusinessCodeSeq.setCurrentSeq(sysBusinessCodeSeq.getCurrentSeq() + 1);
+            businessCodeSeqService.updateById(sysBusinessCodeSeq);
+        }
+        //杩斿洖鐢熸垚鐨勫簭鍒�
+        return appendPrefix(prefix, yearFormat, monthFormat, dayFormat, seqLength, sysBusinessCodeSeq.getCurrentSeq());
+    }
+
+    /**
+     * 鎷兼帴涓氬姟娴佹按鍙�
+     * @param prefix 鍓嶇紑
+     * @param yearFormat 骞翠唤
+     * @param monthFormat 鏈堜唤
+     * @param dayFormat 澶�
+     * @param seqLength 搴忓彿闀垮害
+     * @param currentSeq 褰撳墠搴忓彿
+     * @return
+     */
+    private String appendPrefix(String prefix, String yearFormat, String monthFormat, String dayFormat, Integer seqLength, Integer currentSeq) {
+        StringBuilder sb = new StringBuilder();
+        if(StringUtils.isNotBlank(prefix)){
+            sb.append(prefix);
+        }
+        if(StringUtils.isNotBlank(yearFormat)){
+            sb.append(yearFormat);
+        }
+        if(StringUtils.isNotBlank(monthFormat)){
+            sb.append(monthFormat);
+        }
+        if(StringUtils.isNotBlank(dayFormat)){
+            sb.append(dayFormat);
+        }
+        sb.append(StringUtils.leftPad(currentSeq.toString(), seqLength, '0'));
+        return sb.toString();
+    }
 }
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeSeqServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeSeqServiceImpl.java
new file mode 100644
index 0000000..26c1e8b
--- /dev/null
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBusinessCodeSeqServiceImpl.java
@@ -0,0 +1,58 @@
+package org.jeecg.modules.system.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.apache.commons.lang3.StringUtils;
+import org.jeecg.modules.system.entity.SysBusinessCodeSeq;
+import org.jeecg.modules.system.mapper.SysBusinessCodeSeqMapper;
+import org.jeecg.modules.system.service.ISysBusinessCodeSeqService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.List;
+
+/**
+ * @Description: 涓氬姟缂栫爜鐢熸垚搴忓垪
+ * @Author: jeecg-boot
+ * @Date:   2025-03-19
+ * @Version: V1.0
+ */
+@Service
+public class SysBusinessCodeSeqServiceImpl extends ServiceImpl<SysBusinessCodeSeqMapper, SysBusinessCodeSeq> implements ISysBusinessCodeSeqService {
+
+    @Override
+    public SysBusinessCodeSeq queryByParams(String ruleId, String prefix, String yearValue, String monthValue, String dayValue) {
+        LambdaQueryWrapper<SysBusinessCodeSeq> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(SysBusinessCodeSeq::getRuleId, ruleId);
+        queryWrapper.orderByDesc(SysBusinessCodeSeq::getCreateTime);
+        if(StringUtils.isNotBlank(prefix)){
+            queryWrapper.eq(SysBusinessCodeSeq::getPrefix, prefix);
+        }else {
+            queryWrapper.isNull(SysBusinessCodeSeq::getPrefix);
+        }
+
+        if(StringUtils.isNotBlank(yearValue)){
+            queryWrapper.eq(SysBusinessCodeSeq::getCurrentYear, yearValue);
+        }else {
+            queryWrapper.isNull(SysBusinessCodeSeq::getCurrentYear);
+        }
+
+        if(StringUtils.isNotBlank(monthValue)){
+            queryWrapper.eq(SysBusinessCodeSeq::getCurrentMonth, monthValue);
+        }else {
+            queryWrapper.isNull(SysBusinessCodeSeq::getCurrentMonth);
+        }
+
+        if(StringUtils.isNotBlank(dayValue)){
+            queryWrapper.eq(SysBusinessCodeSeq::getCurrentDay, dayValue);
+        }else {
+            queryWrapper.isNull(SysBusinessCodeSeq::getCurrentDay);
+        }
+        List<SysBusinessCodeSeq> list = super.list(queryWrapper);
+        if(CollectionUtil.isEmpty(list)){
+            return null;
+        }
+        return list.get(0);
+    }
+}

--
Gitblit v1.9.3