pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/dto/AreaDTO.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/resources/db/beforeSql/postgresql/beforeSQL__sys.sql | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/resources/doc/area.json | 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-system/src/main/java/com/ruoyi/basic/entity/City.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-system/src/main/java/com/ruoyi/basic/entity/District.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-system/src/main/java/com/ruoyi/basic/entity/Province.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
pom.xml
@@ -224,7 +224,7 @@ <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-core</artifactId> <version>3.5.12</version> <!-- ä¸ä½ ç Spring Boot å ¼å®¹ççæ¬ --> <version>3.5.12</version> </dependency> <!--mybatis-plus--> ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/MyStartupRunner.java
@@ -1,11 +1,109 @@ package com.ruoyi.web.controller.init; import com.fasterxml.jackson.databind.ObjectMapper; import com.ruoyi.basic.entity.City; import com.ruoyi.basic.entity.District; import com.ruoyi.basic.entity.Province; import com.ruoyi.basic.mapper.CityMapper; import com.ruoyi.basic.mapper.DistrictMapper; import com.ruoyi.basic.mapper.ProvinceMapper; import com.ruoyi.web.controller.init.dto.AreaDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.core.io.ClassPathResource; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; @Slf4j @Component public class MyStartupRunner implements CommandLineRunner{ public class MyStartupRunner implements CommandLineRunner { @Autowired private ProvinceMapper provinceMapper; @Autowired private CityMapper cityMapper; @Autowired private DistrictMapper districtMapper; /** * 项ç®å¯å¨æ¶éè¦æ§è¡çæ¹æ³ * * @param args * @throws Exception */ @Override public void run(String... args) throws Exception { System.out.println("ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼"); // åå§åçå¸åº initRegion(); } private void initRegion() { // å¤ææ¯æ¯å¦æçå¸åºä¿¡æ¯ List<Province> olds = provinceMapper.selectList(null); if (olds.isEmpty()) { // 读åå°åºjsonæä»¶ List<AreaDTO> areaDTOS = null; try { // ä» resources/doc/ å è½½ JSON æä»¶ ClassPathResource resource = new ClassPathResource("doc/area.json"); ObjectMapper objectMapper = new ObjectMapper(); areaDTOS = objectMapper.readValue( resource.getInputStream(), objectMapper.getTypeFactory().constructCollectionType(List.class, AreaDTO.class) ); } catch (Exception e) { log.error("读åå°åºjsonæä»¶å¤±è´¥:" + e); } List<Province> provinces = new ArrayList<>(); List<City> cities = new ArrayList<>(); List<District> districts = new ArrayList<>(); if (!areaDTOS.isEmpty()) { log.info("å°åºä¿¡æ¯åå§åå¼å§"); // ç areaDTOS.forEach(areaDTO -> { Province province = new Province(); province.setId(Long.parseLong(areaDTO.getNo())); province.setName(areaDTO.getName()); provinces.add(province); if (!areaDTO.getChildren().isEmpty()) { // å¸ areaDTO.getChildren().forEach(cityDTO -> { City city = new City(); city.setId(Long.parseLong(cityDTO.getNo())); city.setName(cityDTO.getName()); city.setProvinceId(Long.valueOf(areaDTO.getNo())); cities.add(city); if (!cityDTO.getChildren().isEmpty()) { // åº cityDTO.getChildren().forEach(districtDTO -> { District district = new District(); district.setId(Long.parseLong(districtDTO.getNo())); district.setName(districtDTO.getName()); district.setCityId(Long.valueOf(cityDTO.getNo())); districts.add(district); }); } }); } }); provinceMapper.insertOrUpdate(provinces); cityMapper.insertOrUpdate(cities); districtMapper.insertOrUpdate(districts); log.info("å°åºä¿¡æ¯åå§åç»æ"); } } } } ruoyi-admin/src/main/java/com/ruoyi/web/controller/init/dto/AreaDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.ruoyi.web.controller.init.dto; import lombok.Data; import java.util.List; @Data public class AreaDTO { private String name; private String no; private List<AreaDTO> children; } ruoyi-admin/src/main/resources/db/beforeSql/postgresql/beforeSQL__sys.sql
@@ -1158,14 +1158,10 @@ COMMENT ON COLUMN sys_notice.remark IS '夿³¨'; -- æå ¥åå§åæ°æ® INSERT INTO sys_notice (notice_id, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (1, '温馨æéï¼2018-07-01 è¥ä¾æ°çæ¬åå¸å¦', '2', E'\\xæ°çæ¬å 容'::bytea, '0', 'admin', NOW(), '', NULL, '管çå'), (2, 'ç»´æ¤éç¥ï¼2018-07-01 è¥ä¾ç³»ç»åæ¨ç»´æ¤', '1', E'\\xç»´æ¤å 容'::bytea, '0', 'admin', NOW(), '', NULL, '管çå'); INSERT INTO sys_notice VALUES ('1', '温馨æéï¼2018-07-01 è¥ä¾æ°çæ¬åå¸å¦', '2', 'æ°çæ¬å 容', '0', 'admin', NOW(), '', NULL, '管çå'); INSERT INTO sys_notice VALUES ('2', 'ç»´æ¤éç¥ï¼2018-07-01 è¥ä¾ç³»ç»åæ¨ç»´æ¤', '1', 'ç»´æ¤å 容', '0', 'admin', NOW(), '', NULL, '管çå'); -- ---------------------------- -- 18ã代ç çæä¸å¡è¡¨ ruoyi-admin/src/main/resources/doc/area.json
ruoyi-system/src/main/java/com/ruoyi/basic/entity/City.java
@@ -1,8 +1,11 @@ package com.ruoyi.basic.entity; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import com.ruoyi.common.core.domain.BaseEntity; import java.io.Serializable; import java.util.Date; /** * åå¸è¡¨ å®ä½ç±» @@ -12,7 +15,7 @@ */ @Data @TableName("city") public class City extends BaseEntity { public class City implements Serializable { private static final long serialVersionUID = 1L; @@ -31,4 +34,14 @@ */ @TableField(value = "province_id") private Long provinceId; /** å建æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT) private Date createTime; /** æ´æ°æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; } ruoyi-system/src/main/java/com/ruoyi/basic/entity/District.java
@@ -1,8 +1,11 @@ package com.ruoyi.basic.entity; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import com.ruoyi.common.core.domain.BaseEntity; import java.io.Serializable; import java.util.Date; /** * åºè¡¨ å®ä½ç±» @@ -12,7 +15,7 @@ */ @Data @TableName("district") public class District extends BaseEntity { public class District implements Serializable { private static final long serialVersionUID = 1L; @@ -31,4 +34,14 @@ */ @TableField(value = "city_id") private Long cityId; /** å建æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT) private Date createTime; /** æ´æ°æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; } ruoyi-system/src/main/java/com/ruoyi/basic/entity/Province.java
@@ -1,8 +1,11 @@ package com.ruoyi.basic.entity; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import com.ruoyi.common.core.domain.BaseEntity; import java.io.Serializable; import java.util.Date; /** * ç表 å®ä½ç±» @@ -12,7 +15,7 @@ */ @Data @TableName("province") public class Province extends BaseEntity { public class Province implements Serializable { private static final long serialVersionUID = 1L; @@ -26,4 +29,14 @@ */ @TableField(value = "name") private String name; /** å建æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT) private Date createTime; /** æ´æ°æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; }