diff --git a/yudao-module-farm/pom.xml b/yudao-module-farm/pom.xml
index 10a7dd1c..80d2e0c1 100644
--- a/yudao-module-farm/pom.xml
+++ b/yudao-module-farm/pom.xml
@@ -133,6 +133,12 @@
org.springframework
spring-websocket
+
+ cn.iocoder.boot
+ yudao-module-system
+ 2025.08-SNAPSHOT
+ compile
+
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/disasterdata/DisasterDataController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/disasterdata/DisasterDataController.java
index 5d99e0b6..7c54ff34 100644
--- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/disasterdata/DisasterDataController.java
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/disasterdata/DisasterDataController.java
@@ -42,60 +42,60 @@ public class DisasterDataController {
@Resource
private DisasterDataService disasterDataService;
-// @PostMapping("/create")
-// @Operation(summary = "创建灾害数据")
-// public CommonResult createDisasterData(@Valid @RequestBody DisasterDataSaveReqVO createReqVO) {
-// return success(disasterDataService.createDisasterData(createReqVO));
-// }
-//
-// @PutMapping("/update")
-// @Operation(summary = "更新灾害数据")
-// public CommonResult updateDisasterData(@Valid @RequestBody DisasterDataSaveReqVO updateReqVO) {
-// disasterDataService.updateDisasterData(updateReqVO);
-// return success(true);
-// }
-//
-// @DeleteMapping("/delete")
-// @Operation(summary = "删除灾害数据")
-// @Parameter(name = "id", description = "编号", required = true)
-// public CommonResult deleteDisasterData(@RequestParam("id") String id) {
-// disasterDataService.deleteDisasterData(id);
-// return success(true);
-// }
-//
-// @DeleteMapping("/delete-list")
-// @Parameter(name = "ids", description = "编号", required = true)
-// @Operation(summary = "批量删除灾害数据")
-// public CommonResult deleteDisasterDataList(@RequestParam("ids") List ids) {
-// disasterDataService.deleteDisasterDataListByIds(ids);
-// return success(true);
-// }
-//
-// @GetMapping("/get")
-// @Operation(summary = "获得灾害数据")
-// @Parameter(name = "id", description = "编号", required = true, example = "1024")
-// public CommonResult getDisasterData(@RequestParam("id") String id) {
-// DisasterDataDO disasterData = disasterDataService.getDisasterData(id);
-// return success(BeanUtils.toBean(disasterData, DisasterDataRespVO.class));
-// }
-//
-// @GetMapping("/page")
-// @Operation(summary = "获得灾害数据分页")
-// public CommonResult> getDisasterDataPage(@Valid DisasterDataPageReqVO pageReqVO) {
-// PageResult pageResult = disasterDataService.getDisasterDataPage(pageReqVO);
-// return success(BeanUtils.toBean(pageResult, DisasterDataRespVO.class));
-// }
-//
-// @GetMapping("/export-excel")
-// @Operation(summary = "导出灾害数据 Excel")
-// @ApiAccessLog(operateType = EXPORT)
-// public void exportDisasterDataExcel(@Valid DisasterDataPageReqVO pageReqVO,
-// HttpServletResponse response) throws IOException {
-// pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
-// List list = disasterDataService.getDisasterDataPage(pageReqVO).getList();
-// // 导出 Excel
-// ExcelUtils.write(response, "灾害数据.xls", "数据", DisasterDataRespVO.class,
-// BeanUtils.toBean(list, DisasterDataRespVO.class));
-// }
+ @PostMapping("/create")
+ @Operation(summary = "创建灾害数据")
+ public CommonResult createDisasterData(@Valid @RequestBody DisasterDataSaveReqVO createReqVO) {
+ return success(disasterDataService.createDisasterData(createReqVO));
+ }
+
+ @PutMapping("/update")
+ @Operation(summary = "更新灾害数据")
+ public CommonResult updateDisasterData(@Valid @RequestBody DisasterDataSaveReqVO updateReqVO) {
+ disasterDataService.updateDisasterData(updateReqVO);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete")
+ @Operation(summary = "删除灾害数据")
+ @Parameter(name = "id", description = "编号", required = true)
+ public CommonResult deleteDisasterData(@RequestParam("id") String id) {
+ disasterDataService.deleteDisasterData(id);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete-list")
+ @Parameter(name = "ids", description = "编号", required = true)
+ @Operation(summary = "批量删除灾害数据")
+ public CommonResult deleteDisasterDataList(@RequestParam("ids") List ids) {
+ disasterDataService.deleteDisasterDataListByIds(ids);
+ return success(true);
+ }
+
+ @GetMapping("/get")
+ @Operation(summary = "获得灾害数据")
+ @Parameter(name = "id", description = "编号", required = true, example = "1024")
+ public CommonResult getDisasterData(@RequestParam("id") String id) {
+ DisasterDataDO disasterData = disasterDataService.getDisasterData(id);
+ return success(BeanUtils.toBean(disasterData, DisasterDataRespVO.class));
+ }
+
+ @GetMapping("/page")
+ @Operation(summary = "获得灾害数据分页")
+ public CommonResult> getDisasterDataPage(@Valid DisasterDataPageReqVO pageReqVO) {
+ PageResult pageResult = disasterDataService.getDisasterDataPage(pageReqVO);
+ return success(BeanUtils.toBean(pageResult, DisasterDataRespVO.class));
+ }
+
+ @GetMapping("/export-excel")
+ @Operation(summary = "导出灾害数据 Excel")
+ @ApiAccessLog(operateType = EXPORT)
+ public void exportDisasterDataExcel(@Valid DisasterDataPageReqVO pageReqVO,
+ HttpServletResponse response) throws IOException {
+ pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+ List list = disasterDataService.getDisasterDataPage(pageReqVO).getList();
+ // 导出 Excel
+ ExcelUtils.write(response, "灾害数据.xls", "数据", DisasterDataRespVO.class,
+ BeanUtils.toBean(list, DisasterDataRespVO.class));
+ }
}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/ScreenDisasterDataController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/ScreenDisasterDataController.java
new file mode 100644
index 00000000..177ba45d
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/ScreenDisasterDataController.java
@@ -0,0 +1,104 @@
+package cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata;
+
+import org.springframework.web.bind.annotation.*;
+import jakarta.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.security.access.prepost.PreAuthorize;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.Operation;
+
+import jakarta.validation.constraints.*;
+import jakarta.validation.*;
+import jakarta.servlet.http.*;
+import java.util.*;
+import java.io.IOException;
+
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+
+import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
+
+import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
+import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
+
+import cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo.*;
+import cn.iocoder.yudao.module.farm.dal.dataobject.screendisasterdata.ScreenDisasterDataDO;
+import cn.iocoder.yudao.module.farm.service.screendisasterdata.ScreenDisasterDataService;
+
+@Tag(name = "管理后台 - 大屏数据-灾害数据")
+@RestController
+@RequestMapping("/farm/screen-disaster-data")
+@Validated
+public class ScreenDisasterDataController {
+
+ @Resource
+ private ScreenDisasterDataService screenDisasterDataService;
+
+ @PostMapping("/create")
+ @Operation(summary = "创建大屏数据-灾害数据")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:create')")
+ public CommonResult createScreenDisasterData(@Valid @RequestBody ScreenDisasterDataSaveReqVO createReqVO) {
+ return success(screenDisasterDataService.createScreenDisasterData(createReqVO));
+ }
+
+ @PutMapping("/update")
+ @Operation(summary = "更新大屏数据-灾害数据")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:update')")
+ public CommonResult updateScreenDisasterData(@Valid @RequestBody ScreenDisasterDataSaveReqVO updateReqVO) {
+ screenDisasterDataService.updateScreenDisasterData(updateReqVO);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete")
+ @Operation(summary = "删除大屏数据-灾害数据")
+ @Parameter(name = "id", description = "编号", required = true)
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:delete')")
+ public CommonResult deleteScreenDisasterData(@RequestParam("id") String id) {
+ screenDisasterDataService.deleteScreenDisasterData(id);
+ return success(true);
+ }
+
+ @DeleteMapping("/delete-list")
+ @Parameter(name = "ids", description = "编号", required = true)
+ @Operation(summary = "批量删除大屏数据-灾害数据")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:delete')")
+ public CommonResult deleteScreenDisasterDataList(@RequestParam("ids") List ids) {
+ screenDisasterDataService.deleteScreenDisasterDataListByIds(ids);
+ return success(true);
+ }
+
+ @GetMapping("/get")
+ @Operation(summary = "获得大屏数据-灾害数据")
+ @Parameter(name = "id", description = "编号", required = true, example = "1024")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:query')")
+ public CommonResult getScreenDisasterData(@RequestParam("id") String id) {
+ ScreenDisasterDataDO screenDisasterData = screenDisasterDataService.getScreenDisasterData(id);
+ return success(BeanUtils.toBean(screenDisasterData, ScreenDisasterDataRespVO.class));
+ }
+
+ @GetMapping("/page")
+ @Operation(summary = "获得大屏数据-灾害数据分页")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:query')")
+ public CommonResult> getScreenDisasterDataPage(@Valid ScreenDisasterDataPageReqVO pageReqVO) {
+ PageResult pageResult = screenDisasterDataService.getScreenDisasterDataPage(pageReqVO);
+ return success(BeanUtils.toBean(pageResult, ScreenDisasterDataRespVO.class));
+ }
+
+ @GetMapping("/export-excel")
+ @Operation(summary = "导出大屏数据-灾害数据 Excel")
+ @PreAuthorize("@ss.hasPermission('farm:screen-disaster-data:export')")
+ @ApiAccessLog(operateType = EXPORT)
+ public void exportScreenDisasterDataExcel(@Valid ScreenDisasterDataPageReqVO pageReqVO,
+ HttpServletResponse response) throws IOException {
+ pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+ List list = screenDisasterDataService.getScreenDisasterDataPage(pageReqVO).getList();
+ // 导出 Excel
+ ExcelUtils.write(response, "大屏数据-灾害数据.xls", "数据", ScreenDisasterDataRespVO.class,
+ BeanUtils.toBean(list, ScreenDisasterDataRespVO.class));
+ }
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataPageReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataPageReqVO.java
new file mode 100644
index 00000000..e5f67acc
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataPageReqVO.java
@@ -0,0 +1,45 @@
+package cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo;
+
+import lombok.*;
+import java.util.*;
+import io.swagger.v3.oas.annotations.media.Schema;
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
+@Schema(description = "管理后台 - 大屏数据-灾害数据分页 Request VO")
+@Data
+public class ScreenDisasterDataPageReqVO extends PageParam {
+
+ @Schema(description = "基地id", example = "13308")
+ private String baseId;
+
+ @Schema(description = "基地", example = "赵六")
+ private String baseName;
+
+ @Schema(description = "租户id", example = "20837")
+ private String tenantId;
+
+ @Schema(description = "灾害名称", example = "张三")
+ private String name;
+
+ @Schema(description = "灾害类型")
+ private String category;
+
+ @Schema(description = "发生次数", example = "22355")
+ private Integer disasterCount;
+
+ @Schema(description = "发生月份")
+ @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+ private String[] disasterTime;
+
+ @Schema(description = "创建时间")
+ @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+ private LocalDateTime[] createTime;
+
+ @Schema(description = "使用状态 (1:启用; 0: 停用)", example = "1")
+ private Integer useStatus;
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataRespVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataRespVO.java
new file mode 100644
index 00000000..d00844df
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataRespVO.java
@@ -0,0 +1,51 @@
+package cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+import cn.idev.excel.annotation.*;
+
+@Schema(description = "管理后台 - 大屏数据-灾害数据 Response VO")
+@Data
+@ExcelIgnoreUnannotated
+public class ScreenDisasterDataRespVO {
+
+ @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "5690")
+ @ExcelProperty("id")
+ private String id;
+
+ @Schema(description = "基地id", example = "13308")
+ @ExcelProperty("基地id")
+ private String baseId;
+
+ @Schema(description = "基地", example = "赵六")
+ @ExcelProperty("基地")
+ private String baseName;
+
+ @Schema(description = "灾害名称", example = "张三")
+ @ExcelProperty("灾害名称")
+ private String name;
+
+ @Schema(description = "灾害类型")
+ @ExcelProperty("灾害类型")
+ private String category;
+
+ @Schema(description = "发生次数", example = "22355")
+ @ExcelProperty("发生次数")
+ private Integer disasterCount;
+
+ @Schema(description = "发生月份")
+ @ExcelProperty("发生月份")
+ private String disasterTime;
+
+ @Schema(description = "创建时间")
+ @ExcelProperty("创建时间")
+ private LocalDateTime createTime;
+
+ @Schema(description = "使用状态 (1:启用; 0: 停用)", example = "1")
+ @ExcelProperty("使用状态 (1:启用; 0: 停用)")
+ private Integer useStatus;
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataSaveReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataSaveReqVO.java
new file mode 100644
index 00000000..baf7c1f6
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/screendisasterdata/vo/ScreenDisasterDataSaveReqVO.java
@@ -0,0 +1,39 @@
+package cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import jakarta.validation.constraints.*;
+
+@Schema(description = "管理后台 - 大屏数据-灾害数据新增/修改 Request VO")
+@Data
+public class ScreenDisasterDataSaveReqVO {
+
+ @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "5690")
+ private String id;
+
+ @Schema(description = "基地id", example = "13308")
+ private String baseId;
+
+ @Schema(description = "基地", example = "赵六")
+ private String baseName;
+
+ @Schema(description = "租户id", example = "20837")
+ private String tenantId;
+
+ @Schema(description = "灾害名称", example = "张三")
+ private String name;
+
+ @Schema(description = "灾害类型")
+ private String category;
+
+ @Schema(description = "发生次数", example = "22355")
+ private Integer disasterCount;
+
+ @Schema(description = "发生月份")
+ private String disasterTime;
+
+ @Schema(description = "使用状态 (1:启用; 0: 停用)", example = "1")
+ private Integer useStatus;
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/varietydata/VarietyDataController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/varietydata/VarietyDataController.java
index e972269e..1983efa8 100644
--- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/varietydata/VarietyDataController.java
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/varietydata/VarietyDataController.java
@@ -44,14 +44,12 @@ public class VarietyDataController {
@PostMapping("/create")
@Operation(summary = "创建品种数据")
-
public CommonResult createVarietyData(@Valid @RequestBody VarietyDataSaveReqVO createReqVO) {
return success(varietyDataService.createVarietyData(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新品种数据")
-
public CommonResult updateVarietyData(@Valid @RequestBody VarietyDataSaveReqVO updateReqVO) {
varietyDataService.updateVarietyData(updateReqVO);
return success(true);
@@ -60,7 +58,6 @@ public class VarietyDataController {
@DeleteMapping("/delete")
@Operation(summary = "删除品种数据")
@Parameter(name = "id", description = "编号", required = true)
-
public CommonResult deleteVarietyData(@RequestParam("id") String id) {
varietyDataService.deleteVarietyData(id);
return success(true);
@@ -69,7 +66,6 @@ public class VarietyDataController {
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除品种数据")
-
public CommonResult deleteVarietyDataList(@RequestParam("ids") List ids) {
varietyDataService.deleteVarietyDataListByIds(ids);
return success(true);
@@ -78,7 +74,6 @@ public class VarietyDataController {
@GetMapping("/get")
@Operation(summary = "获得品种数据")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
-
public CommonResult getVarietyData(@RequestParam("id") String id) {
VarietyDataDO varietyData = varietyDataService.getVarietyData(id);
return success(BeanUtils.toBean(varietyData, VarietyDataRespVO.class));
@@ -86,7 +81,6 @@ public class VarietyDataController {
@GetMapping("/page")
@Operation(summary = "获得品种数据分页")
-
public CommonResult> getVarietyDataPage(@Valid VarietyDataPageReqVO pageReqVO) {
PageResult pageResult = varietyDataService.getVarietyDataPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, VarietyDataRespVO.class));
@@ -94,7 +88,6 @@ public class VarietyDataController {
@GetMapping("/export-excel")
@Operation(summary = "导出品种数据 Excel")
-
@ApiAccessLog(operateType = EXPORT)
public void exportVarietyDataExcel(@Valid VarietyDataPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/screendisasterdata/ScreenDisasterDataDO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/screendisasterdata/ScreenDisasterDataDO.java
new file mode 100644
index 00000000..85fc6aec
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/screendisasterdata/ScreenDisasterDataDO.java
@@ -0,0 +1,60 @@
+package cn.iocoder.yudao.module.farm.dal.dataobject.screendisasterdata;
+
+import lombok.*;
+import java.util.*;
+import java.time.LocalDateTime;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.*;
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+
+/**
+ * 大屏数据-灾害数据 DO
+ *
+ * @author 万懋超级管理
+ */
+@TableName("farm_screen_disaster_data")
+@KeySequence("farm_screen_disaster_data_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ScreenDisasterDataDO extends BaseDO {
+
+ /**
+ * id
+ */
+ @TableId(type = IdType.INPUT)
+ private String id;
+ /**
+ * 基地id
+ */
+ private String baseId;
+ /**
+ * 基地
+ */
+ private String baseName;
+ /**
+ * 灾害名称
+ */
+ private String name;
+ /**
+ * 灾害类型
+ */
+ private String category;
+ /**
+ * 发生次数
+ */
+ private Integer disasterCount;
+ /**
+ * 发生月份
+ */
+ private String disasterTime;
+ /**
+ * 使用状态 (1:启用; 0: 停用)
+ */
+ private Integer useStatus;
+
+ private String tenantId;
+}
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/screendisasterdata/ScreenDisasterDataMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/screendisasterdata/ScreenDisasterDataMapper.java
new file mode 100644
index 00000000..063b8b0f
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/screendisasterdata/ScreenDisasterDataMapper.java
@@ -0,0 +1,34 @@
+package cn.iocoder.yudao.module.farm.dal.mysql.screendisasterdata;
+
+import java.util.*;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.farm.dal.dataobject.screendisasterdata.ScreenDisasterDataDO;
+import org.apache.ibatis.annotations.Mapper;
+import cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo.*;
+
+/**
+ * 大屏数据-灾害数据 Mapper
+ *
+ * @author 万懋超级管理
+ */
+@Mapper
+public interface ScreenDisasterDataMapper extends BaseMapperX {
+
+ default PageResult selectPage(ScreenDisasterDataPageReqVO reqVO) {
+ return selectPage(reqVO, new LambdaQueryWrapperX()
+ .eqIfPresent(ScreenDisasterDataDO::getBaseId, reqVO.getBaseId())
+ .likeIfPresent(ScreenDisasterDataDO::getBaseName, reqVO.getBaseName())
+ .eqIfPresent(ScreenDisasterDataDO::getTenantId, reqVO.getTenantId())
+ .likeIfPresent(ScreenDisasterDataDO::getName, reqVO.getName())
+ .eqIfPresent(ScreenDisasterDataDO::getCategory, reqVO.getCategory())
+ .eqIfPresent(ScreenDisasterDataDO::getDisasterCount, reqVO.getDisasterCount())
+ .betweenIfPresent(ScreenDisasterDataDO::getDisasterTime, reqVO.getDisasterTime())
+ .betweenIfPresent(ScreenDisasterDataDO::getCreateTime, reqVO.getCreateTime())
+ .eqIfPresent(ScreenDisasterDataDO::getUseStatus, reqVO.getUseStatus())
+ .orderByDesc(ScreenDisasterDataDO::getId));
+ }
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/ErrorCodeConstants.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/ErrorCodeConstants.java
index 0f1c1383..a8ba3266 100644
--- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/ErrorCodeConstants.java
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/enums/ErrorCodeConstants.java
@@ -106,5 +106,7 @@ public interface ErrorCodeConstants {
ErrorCode TRACEABILITY_CODE_NOT_EXISTS = new ErrorCode(1_050_031_000, "溯源码不存在");
// ========== 模型管理 1_050_032_000 ==========
- ErrorCode QR_CODE_WRITE_FAILED = new ErrorCode(1_050_032_000, "生成二维码失败");
+ ErrorCode SCREEN_DISASTER_DATA_NOT_EXISTS = new ErrorCode(1_050_032_000, "灾害数据不存在");
+
+
}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/cropFarmingCenter/CropFarmingCenterServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/cropFarmingCenter/CropFarmingCenterServiceImpl.java
index 4ff2c592..f842e054 100644
--- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/cropFarmingCenter/CropFarmingCenterServiceImpl.java
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/cropFarmingCenter/CropFarmingCenterServiceImpl.java
@@ -12,8 +12,11 @@ import cn.iocoder.yudao.module.farm.controller.admin.modelmanagement.vo.ModelMan
import cn.iocoder.yudao.module.farm.dal.dataobject.productionplan.ProductionPlanDO;
import cn.iocoder.yudao.module.farm.dal.mysql.productionplan.ProductionPlanMapper;
import cn.iocoder.yudao.module.farm.enums.CommonConstants;
+import cn.iocoder.yudao.module.farm.service.cultivationarea.CultivationAreaService;
import cn.iocoder.yudao.module.farm.service.modelmanagement.ModelManagementService;
+import cn.iocoder.yudao.module.farm.service.productionplan.ProductionPlanService;
import cn.iocoder.yudao.module.farm.utils.StrHelperUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -47,7 +50,7 @@ public class CropFarmingCenterServiceImpl implements CropFarmingCenterService {
String speciesModelId = reqVO.getSpeciesModelId();
// 创建模型案例 todo
- speciesModelId = modelManagementService.createModelManagementCase(speciesModelId,taskId);
+ speciesModelId = modelManagementService.createModelManagementCase(speciesModelId, taskId);
if (speciesModelId.equals("")) {
return;
}
@@ -79,6 +82,7 @@ public class CropFarmingCenterServiceImpl implements CropFarmingCenterService {
obj.setPlotName(e.getPlotName());
obj.setTenantId(e.getTenantId());
+
// 随机字符串 + 地块名称
obj.setPlanNumber(StrHelperUtil.generate() +"-"+ e.getPlotName());
obj.setId(taskId);
@@ -91,11 +95,10 @@ public class CropFarmingCenterServiceImpl implements CropFarmingCenterService {
@Override
public ProductionPlanRespVO getProductionPlan(String id) {
LoginUser user = getLoginUser();
-
- ProductionPlanDO productionPlanDO = productionPlanMapper.selectOne(
- ProductionPlanDO::getId, id,
- ProductionPlanDO::getTenantId,user.getTenantId());
-
+ QueryWrapper queryWrapper = new QueryWrapper();
+ queryWrapper.eq("id", id);
+ queryWrapper.eq("tenant_id", user.getTenantId());
+ ProductionPlanDO productionPlanDO = productionPlanMapper.selectOne(queryWrapper);
if (productionPlanDO == null) {
return new ProductionPlanRespVO();
}
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/personnelmanagement/PersonnelManagementServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/personnelmanagement/PersonnelManagementServiceImpl.java
index ce318b2e..bc4caf30 100644
--- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/personnelmanagement/PersonnelManagementServiceImpl.java
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/personnelmanagement/PersonnelManagementServiceImpl.java
@@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.farm.service.personnelmanagement;
import cn.hutool.core.util.IdUtil;
+import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.security.core.LoginUser;
@@ -9,7 +10,10 @@ import cn.iocoder.yudao.module.farm.controller.admin.personnelmanagement.vo.Pers
import cn.iocoder.yudao.module.farm.controller.admin.personnelmanagement.vo.PersonnelManagementSaveReqVO;
import cn.iocoder.yudao.module.farm.dal.dataobject.personnelmanagement.PersonnelManagementDO;
import cn.iocoder.yudao.module.farm.dal.mysql.personnelmanagement.PersonnelManagementMapper;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.dal.mysql.user.AdminUserMapper;
import jakarta.annotation.Resource;
+import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
@@ -29,6 +33,10 @@ public class PersonnelManagementServiceImpl implements PersonnelManagementServic
@Resource
private PersonnelManagementMapper personnelManagementMapper;
+ @Resource
+ private AdminUserMapper userMapper;
+ @Resource
+ private PasswordEncoder passwordEncoder;
@Override
public String createPersonnelManagement(PersonnelManagementSaveReqVO createReqVO) {
@@ -41,8 +49,17 @@ public class PersonnelManagementServiceImpl implements PersonnelManagementServic
// 处理图片集合转换
handleImageConversion(personnelManagement, createReqVO);
+ AdminUserDO adminUserDO = new AdminUserDO();
+ adminUserDO.setUsername(personnelManagement.getPhone());
+ adminUserDO.setNickname(personnelManagement.getName());
+ adminUserDO.setMobile(personnelManagement.getPhone());
+ adminUserDO.setAvatar(personnelManagement.getPicture());
+ adminUserDO.setTenantId(user.getTenantId());
+ adminUserDO.setStatus(CommonStatusEnum.ENABLE.getStatus()); // 默认开启
+ String substring = personnelManagement.getPhone().substring(personnelManagement.getPhone().length() - 6);
+ adminUserDO.setPassword(encodePassword(substring)); // 加密密码
+ userMapper.insert(adminUserDO);
personnelManagementMapper.insert(personnelManagement);
-
// 返回
return personnelManagement.getId();
}
@@ -121,4 +138,14 @@ public class PersonnelManagementServiceImpl implements PersonnelManagementServic
personnelManagement.setPicture(reqVO.getPicture());
}
}
+
+ /**
+ * 对密码进行加密
+ *
+ * @param password 密码
+ * @return 加密后的密码
+ */
+ private String encodePassword(String password) {
+ return passwordEncoder.encode(password);
+ }
}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataService.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataService.java
new file mode 100644
index 00000000..5302f040
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataService.java
@@ -0,0 +1,62 @@
+package cn.iocoder.yudao.module.farm.service.screendisasterdata;
+
+import java.util.*;
+import jakarta.validation.*;
+import cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo.*;
+import cn.iocoder.yudao.module.farm.dal.dataobject.screendisasterdata.ScreenDisasterDataDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+
+/**
+ * 大屏数据-灾害数据 Service 接口
+ *
+ * @author 万懋超级管理
+ */
+public interface ScreenDisasterDataService {
+
+ /**
+ * 创建大屏数据-灾害数据
+ *
+ * @param createReqVO 创建信息
+ * @return 编号
+ */
+ String createScreenDisasterData(@Valid ScreenDisasterDataSaveReqVO createReqVO);
+
+ /**
+ * 更新大屏数据-灾害数据
+ *
+ * @param updateReqVO 更新信息
+ */
+ void updateScreenDisasterData(@Valid ScreenDisasterDataSaveReqVO updateReqVO);
+
+ /**
+ * 删除大屏数据-灾害数据
+ *
+ * @param id 编号
+ */
+ void deleteScreenDisasterData(String id);
+
+ /**
+ * 批量删除大屏数据-灾害数据
+ *
+ * @param ids 编号
+ */
+ void deleteScreenDisasterDataListByIds(List ids);
+
+ /**
+ * 获得大屏数据-灾害数据
+ *
+ * @param id 编号
+ * @return 大屏数据-灾害数据
+ */
+ ScreenDisasterDataDO getScreenDisasterData(String id);
+
+ /**
+ * 获得大屏数据-灾害数据分页
+ *
+ * @param pageReqVO 分页查询
+ * @return 大屏数据-灾害数据分页
+ */
+ PageResult getScreenDisasterDataPage(ScreenDisasterDataPageReqVO pageReqVO);
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataServiceImpl.java
new file mode 100644
index 00000000..1169b752
--- /dev/null
+++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/screendisasterdata/ScreenDisasterDataServiceImpl.java
@@ -0,0 +1,85 @@
+package cn.iocoder.yudao.module.farm.service.screendisasterdata;
+
+import cn.hutool.core.collection.CollUtil;
+import org.springframework.stereotype.Service;
+import jakarta.annotation.Resource;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.*;
+import cn.iocoder.yudao.module.farm.controller.admin.screendisasterdata.vo.*;
+import cn.iocoder.yudao.module.farm.dal.dataobject.screendisasterdata.ScreenDisasterDataDO;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+
+import cn.iocoder.yudao.module.farm.dal.mysql.screendisasterdata.ScreenDisasterDataMapper;
+
+import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
+import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.diffList;
+import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.*;
+
+/**
+ * 大屏数据-灾害数据 Service 实现类
+ *
+ * @author 万懋超级管理
+ */
+@Service
+@Validated
+public class ScreenDisasterDataServiceImpl implements ScreenDisasterDataService {
+
+ @Resource
+ private ScreenDisasterDataMapper screenDisasterDataMapper;
+
+ @Override
+ public String createScreenDisasterData(ScreenDisasterDataSaveReqVO createReqVO) {
+ // 插入
+ ScreenDisasterDataDO screenDisasterData = BeanUtils.toBean(createReqVO, ScreenDisasterDataDO.class);
+ screenDisasterDataMapper.insert(screenDisasterData);
+
+ // 返回
+ return screenDisasterData.getId();
+ }
+
+ @Override
+ public void updateScreenDisasterData(ScreenDisasterDataSaveReqVO updateReqVO) {
+ // 校验存在
+ validateScreenDisasterDataExists(updateReqVO.getId());
+ // 更新
+ ScreenDisasterDataDO updateObj = BeanUtils.toBean(updateReqVO, ScreenDisasterDataDO.class);
+ screenDisasterDataMapper.updateById(updateObj);
+ }
+
+ @Override
+ public void deleteScreenDisasterData(String id) {
+ // 校验存在
+ validateScreenDisasterDataExists(id);
+ // 删除
+ screenDisasterDataMapper.deleteById(id);
+ }
+
+ @Override
+ public void deleteScreenDisasterDataListByIds(List ids) {
+ // 删除
+ screenDisasterDataMapper.deleteByIds(ids);
+ }
+
+
+ private void validateScreenDisasterDataExists(String id) {
+ if (screenDisasterDataMapper.selectById(id) == null) {
+ throw exception(SCREEN_DISASTER_DATA_NOT_EXISTS);
+ }
+ }
+
+ @Override
+ public ScreenDisasterDataDO getScreenDisasterData(String id) {
+ return screenDisasterDataMapper.selectById(id);
+ }
+
+ @Override
+ public PageResult getScreenDisasterDataPage(ScreenDisasterDataPageReqVO pageReqVO) {
+ return screenDisasterDataMapper.selectPage(pageReqVO);
+ }
+
+}
\ No newline at end of file
diff --git a/yudao-module-farm/src/main/resources/mapper/speciesclassifylibrary/SpeciesClassifyLibraryMapper.xml b/yudao-module-farm/src/main/resources/mapper/speciesclassifylibrary/SpeciesClassifyLibraryMapper.xml
index cc1dfaf2..2437c665 100644
--- a/yudao-module-farm/src/main/resources/mapper/speciesclassifylibrary/SpeciesClassifyLibraryMapper.xml
+++ b/yudao-module-farm/src/main/resources/mapper/speciesclassifylibrary/SpeciesClassifyLibraryMapper.xml
@@ -46,7 +46,6 @@
AND t.use_status = #{req.useStatus}
- AND t.deleted = 0
diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/PersonnelManagementDO.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/PersonnelManagementDO.java
new file mode 100644
index 00000000..eae66364
--- /dev/null
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/PersonnelManagementDO.java
@@ -0,0 +1,80 @@
+package cn.iocoder.yudao.module.system.dal.dataobject.user;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.*;
+
+import java.util.List;
+
+/**
+ * 人员管理 DO
+ *
+ * @author 芋道源码
+ */
+@TableName("farm_personnel_management")
+@KeySequence("farm_personnel_management_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class PersonnelManagementDO extends BaseDO {
+
+ /**
+ * 人员id
+ */
+ @TableId(type = IdType.INPUT)
+ private String id;
+ /**
+ * 用户姓名
+ */
+ private String name;
+ /**
+ * 所属部门
+ */
+ private String department;
+ /**
+ * 电话号
+ */
+ private String phone;
+ /**
+ * 角色id用,隔开
+ */
+ private String role;
+ /**
+ * 头像(数据库存储为逗号分隔的字符串)
+ */
+ @TableField(value = "picture")
+ private String picture;
+
+ /**
+ * 头像集合(业务层使用)
+ */
+ @TableField(exist = false)
+ private List pictureList;
+
+ /**
+ * 0=启用,1=停用
+ */
+ private Integer accountStatus;
+ /**
+ * 基地id
+ */
+ private String baseId;
+ /**
+ * 基地
+ */
+ private String baseName;
+ /**
+ * 地块ID
+ */
+ private String plotId;
+ /**
+ * 地块
+ */
+ private String plotName;
+
+ private String tenantId;
+
+}
\ No newline at end of file
diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java
index c0c9be8e..0ab7330a 100644
--- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java
@@ -5,6 +5,7 @@ import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserPageReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.PersonnelManagementDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.Collection;
diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/PersonnelManagementMapper.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/PersonnelManagementMapper.java
new file mode 100644
index 00000000..9ca99650
--- /dev/null
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/PersonnelManagementMapper.java
@@ -0,0 +1,10 @@
+package cn.iocoder.yudao.module.system.dal.mysql.user;
+
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.PersonnelManagementDO;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface PersonnelManagementMapper extends BaseMapperX {
+
+}
diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
index 41b9dbee..88a4fe46 100644
--- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java
@@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.system.service.user;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
@@ -22,8 +23,10 @@ import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserSaveReqV
import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dept.UserPostDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.PersonnelManagementDO;
import cn.iocoder.yudao.module.system.dal.mysql.dept.UserPostMapper;
import cn.iocoder.yudao.module.system.dal.mysql.user.AdminUserMapper;
+import cn.iocoder.yudao.module.system.dal.mysql.user.PersonnelManagementMapper;
import cn.iocoder.yudao.module.system.service.dept.DeptService;
import cn.iocoder.yudao.module.system.service.dept.PostService;
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
@@ -82,6 +85,9 @@ public class AdminUserServiceImpl implements AdminUserService {
@Resource
private ConfigApi configApi;
+ @Resource
+ private PersonnelManagementMapper personnelManagementMapper;
+
@Override
@Transactional(rollbackFor = Exception.class)
@LogRecord(type = SYSTEM_USER_TYPE, subType = SYSTEM_USER_CREATE_SUB_TYPE, bizNo = "{{#user.id}}",
@@ -110,6 +116,26 @@ public class AdminUserServiceImpl implements AdminUserService {
// 3. 记录操作日志上下文
LogRecordContext.putVariable("user", user);
+ PersonnelManagementDO userDo = new PersonnelManagementDO();
+ userDo.setName(user.getNickname());
+ userDo.setPhone(user.getMobile());
+ userDo.setDepartment(user.getDeptId().toString());
+ userDo.setTenantId(user.getTenantId().toString());
+ userDo.setPicture(user.getAvatar());
+ userDo.setAccountStatus(0);
+ List userPostDOS = convertList(user.getPostIds(),
+ postId -> new UserPostDO().setUserId(user.getId()).setPostId(postId));
+ String roles = "";
+ for (UserPostDO up : userPostDOS) {
+ if (roles.length() > 0) {
+ roles += "," + up.getPostId();
+ } else {
+ roles = up.getPostId().toString();
+ }
+ }
+ userDo.setRole(roles);
+ userDo.setId(IdUtil.fastUUID());
+ personnelManagementMapper.insert(userDo);
return user.getId();
}
@@ -355,7 +381,7 @@ public class AdminUserServiceImpl implements AdminUserService {
}
private AdminUserDO validateUserForCreateOrUpdate(Long id, String username, String mobile, String email,
- Long deptId, Set postIds) {
+ Long deptId, Set postIds) {
// 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确
return DataPermissionUtils.executeIgnore(() -> {
// 校验用户存在
@@ -442,6 +468,7 @@ public class AdminUserServiceImpl implements AdminUserService {
/**
* 校验旧密码
+ *
* @param id 用户 id
* @param oldPassword 旧密码
*/
@@ -476,7 +503,7 @@ public class AdminUserServiceImpl implements AdminUserService {
// 2.1.1 校验字段是否符合要求
try {
ValidationUtils.validate(BeanUtils.toBean(importUser, UserSaveReqVO.class).setPassword(initPassword));
- } catch (ConstraintViolationException ex){
+ } catch (ConstraintViolationException ex) {
respVO.getFailureUsernames().put(importUser.getUsername(), ex.getMessage());
return;
}