From 1d2933b4209f891d7dbd431ba44577c7d5e5eef4 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期一, 22 九月 2025 11:40:18 +0800
Subject: [PATCH] yys 配置文件修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java | 74 +++++++++++++++++++++++++++++-------
1 files changed, 59 insertions(+), 15 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java
index 321646e..771817d 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java
@@ -2,14 +2,14 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.basic.dto.CoalFieldDto;
+import com.ruoyi.basic.dto.CoalPlanDto;
import com.ruoyi.basic.entity.City;
-import com.ruoyi.basic.entity.CoalField;
import com.ruoyi.basic.entity.District;
import com.ruoyi.basic.entity.Province;
import com.ruoyi.basic.mapper.*;
import com.ruoyi.basic.service.CoalFieldService;
import com.ruoyi.basic.service.CoalPlanService;
-import com.ruoyi.common.utils.bean.BeanUtils;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.web.controller.init.dto.AreaDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -18,9 +18,9 @@
import org.springframework.stereotype.Component;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
+import java.util.function.Supplier;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -48,7 +48,7 @@
public void run(String... args) throws Exception {
// 鍒濆鍖栫渷甯傚尯
initRegion();
- // 鍒濆鏂板閰嶇叅璁$畻鍣ㄤ腑鐨勫瓧娈靛拰鏂规
+ // 鍒濆鏂板閰嶇叅璁$畻鍣ㄤ腑鐨勭叅绉嶅瓧娈靛拰鏂规
initCoalFields();
}
@@ -120,19 +120,63 @@
}
private void initCoalFields() {
+ try {
+ // 1. 鍒濆鍖栧瓧娈甸�昏緫
+ Supplier<CoalFieldDto> dtoSupplier = CoalFieldDto::new; // 鍋囪瀛樺湪鏃犲弬鏋勯�犲嚱鏁�
- List<CoalFieldDto> fields = Stream.of("鍙戠儹閲�", "纭垎", "鐏板垎", "姘村垎")
- .map(CoalFieldDto::from)
- .toList();
- // 鎵归噺鑾峰彇宸插瓨鍦ㄧ殑 fieldNames
- Set<String> existingFieldNames = coalFieldService.getFieldNamesByNames(
- fields.stream().map(CoalFieldDto::getFieldName).collect(Collectors.toSet())
- );
+ List<CoalFieldDto> fields = Stream.of("鍙戠儹閲�", "纭垎", "鐏板垎", "姘村垎")
+ .map(fieldName -> {
+ CoalFieldDto dto = dtoSupplier.get();
+ dto.setFieldName(fieldName); // 鍋囪瀛樺湪 setFieldName 鏂规硶
+ dto.setFieldDescription("閰嶇叅璁$畻鍣ㄥ獟璐ㄥ瓧娈�");
+ return dto;
+ })
+ .toList();
- fields.forEach(field -> {
- if (!existingFieldNames.contains(field.getFieldName())) {
- coalFieldService.addOrEditCoalField(field);
+ // 2. 淇濆瓨瀛楁锛堝鏋滀笉瀛樺湪锛�
+ Set<String> existingNames = coalFieldService.getFieldNamesByNames(
+ fields.stream().map(CoalFieldDto::getFieldName).collect(Collectors.toSet())
+ );
+
+ fields.forEach(field -> {
+ if (!existingNames.contains(field.getFieldName())) {
+ coalFieldService.addOrEditCoalField(field);
+ }
+ });
+
+ // 3. 鏌ヨ鎵�鏈夊瓧娈礗D
+ List<CoalFieldDto> allFields = coalFieldService.getFieldsByNames(
+ fields.stream().map(CoalFieldDto::getFieldName).collect(Collectors.toSet())
+ );
+
+ // 4. 鍒涘缓鏂规
+
+ String planName = "閰嶇叅璁$畻鍣ㄦ柟妗�";
+ boolean planExists = coalPlanService.checkPlanExists(allFields.stream()
+ .map(f -> f.getId().toString())
+ .collect(Collectors.joining(",")));
+
+ if (!planExists) {
+ // 鍒涘缓鏂版柟妗�
+ CoalPlanDto planDto = new CoalPlanDto();
+ planDto.setPlan(planName);
+ planDto.setCoalFields(allFields.stream()
+ .map(CoalFieldDto::getFields)
+ .collect(Collectors.joining(",")));
+ planDto.setFieldIds(allFields.stream()
+ .map(f -> f.getId().toString())
+ .collect(Collectors.joining(",")));
+ planDto.setSchemeDesc("绯荤粺鐢熸垚閰嶇叅璁$畻鍣ㄦ墍闇�瀛楁鏂规");
+
+ coalPlanService.addOrEditCoalPlan(planDto);
+ log.info("鎴愬姛鍒涘缓閰嶇叅璁$畻鍣ㄦ柟妗�");
+ } else {
+ log.info("閰嶇叅璁$畻鍣ㄦ柟妗堝凡瀛樺湪锛岃烦杩囧垱寤�");
}
- });
+ } catch (Exception e) {
+ // 璁板綍绯荤粺寮傚父鏃ュ織锛屽苟杞崲涓轰笟鍔″紓甯告姏鍑猴紙瑙﹀彂鍥炴粴锛�
+ log.error("閰嶇叅璁$畻鍣ㄥ垵濮嬪寲澶辫触", e);
+ throw new BaseException("鍒濆鍖栭厤鐓ゆ柟妗堝け璐ワ紝璇风◢鍚庨噸璇�");
+ }
}
}
--
Gitblit v1.9.3