diff --git a/pom.xml b/pom.xml
index 60a1598..1338b10 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
-
+
com.ruoyi
ruoyi
3.8.5
@@ -11,7 +11,7 @@
ruoyi
http://www.ruoyi.vip
若依管理系统
-
+
3.8.5
UTF-8
@@ -31,7 +31,7 @@
2.3
0.9.1
-
+
@@ -180,6 +180,9 @@
ruoyi-quartz
ruoyi-generator
ruoyi-common
+ ruoyi-pill
+ ruoyi-crops
+ 01
pom
@@ -228,4 +231,4 @@
-
\ No newline at end of file
+
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 9a4cde8..5e649ae 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -37,7 +37,7 @@
1.6.2
-
+
mysql
mysql-connector-java
@@ -60,6 +60,33 @@
com.ruoyi
ruoyi-generator
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+ com.ruoyi
+ ruoyi-pill
+ 3.8.5
+
+
+ com.ruoyi
+ ruoyi-crops
+ 3.8.5
+ compile
+
+
+
+ cn.hutool
+ hutool-all
+ 5.7.1
+
+
+
+ com.google.code.gson
+ gson
+ 2.10.1
+
@@ -80,17 +107,17 @@
-
- org.apache.maven.plugins
- maven-war-plugin
- 3.1.0
+
+ org.apache.maven.plugins
+ maven-war-plugin
+ 3.1.0
false
${project.artifactId}
-
-
+
+
${project.artifactId}
-
\ No newline at end of file
+
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
index e3c56ee..d09ea5b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
@@ -3,12 +3,14 @@ package com.ruoyi;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+import org.springframework.scheduling.annotation.EnableScheduling;
/**
* 启动程序
- *
+ *
* @author ruoyi
*/
+@EnableScheduling
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class RuoYiApplication
{
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsComprehensiveDataController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsComprehensiveDataController.java
new file mode 100644
index 0000000..784933d
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsComprehensiveDataController.java
@@ -0,0 +1,98 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.crops.domain.CropsComprehensiveData;
+import com.ruoyi.crops.service.ICropsComprehensiveDataService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 作物综合数据Controller
+ *
+ * @author my
+ * @date 2023-04-19
+ */
+@RestController
+@RequestMapping("/crops/data")
+public class CropsComprehensiveDataController extends BaseController
+{
+ @Autowired
+ private ICropsComprehensiveDataService cropsComprehensiveDataService;
+
+ /**
+ * 查询作物综合数据列表
+ */
+
+ @GetMapping("/list")
+ public TableDataInfo list(CropsComprehensiveData cropsComprehensiveData)
+ {
+// startPage();
+ List list = cropsComprehensiveDataService.selectCropsComprehensiveDataList(cropsComprehensiveData);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出作物综合数据列表
+ */
+
+ @Log(title = "作物综合数据", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, CropsComprehensiveData cropsComprehensiveData)
+ {
+ List list = cropsComprehensiveDataService.selectCropsComprehensiveDataList(cropsComprehensiveData);
+ ExcelUtil util = new ExcelUtil(CropsComprehensiveData.class);
+ util.exportExcel(response, list, "作物综合数据数据");
+ }
+
+ /**
+ * 获取作物综合数据详细信息
+ */
+
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(cropsComprehensiveDataService.selectCropsComprehensiveDataById(id));
+ }
+
+ /**
+ * 新增作物综合数据
+ */
+
+ @Log(title = "作物综合数据", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody CropsComprehensiveData cropsComprehensiveData)
+ {
+ return toAjax(cropsComprehensiveDataService.insertCropsComprehensiveData(cropsComprehensiveData));
+ }
+
+ /**
+ * 修改作物综合数据
+ */
+
+ @Log(title = "作物综合数据", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody CropsComprehensiveData cropsComprehensiveData)
+ {
+ return toAjax(cropsComprehensiveDataService.updateCropsComprehensiveData(cropsComprehensiveData));
+ }
+
+ /**
+ * 删除作物综合数据
+ */
+
+ @Log(title = "作物综合数据", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(cropsComprehensiveDataService.deleteCropsComprehensiveDataByIds(ids));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsDroughtController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsDroughtController.java
new file mode 100644
index 0000000..aabfe78
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsDroughtController.java
@@ -0,0 +1,43 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.CropsDrought;
+import com.ruoyi.crops.service.ICropsDroughtService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 作物旱情controller
+ */
+@RestController
+@RequestMapping("/crops/drought")
+public class CropsDroughtController extends BaseController {
+ @Autowired
+ private ICropsDroughtService iCropsDroughtService;
+
+ /**
+ * 批量新增
+ * @param map
+ * @return
+ */
+ @PostMapping("/insertBatch")
+ public AjaxResult insertBatch(@RequestBody Map> map){
+ List cropDroughtList = map.get("cropDroughtList");
+ return toAjax(iCropsDroughtService.insertBatch(cropDroughtList));
+ }
+
+ /**
+ * 根据时间查询
+ * @param time
+ * @return
+ */
+ @GetMapping("/{time}")
+ public List selectByTime(@PathVariable("time")Date time){
+ return iCropsDroughtService.selectByTime(time);
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsGrowthController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsGrowthController.java
new file mode 100644
index 0000000..a0e5fab
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsGrowthController.java
@@ -0,0 +1,44 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.CropStructure;
+import com.ruoyi.crops.domain.CropsGrowth;
+import com.ruoyi.crops.service.ICropsGrowthService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 作物长势controller
+ */
+@RestController
+@RequestMapping("/crops/growth")
+public class CropsGrowthController extends BaseController {
+ @Autowired
+ private ICropsGrowthService iCropsGrowthService;
+
+ /**
+ * 批量新增
+ * @param map
+ * @return
+ */
+ @PostMapping("/insertBatch")
+ public AjaxResult insertBatch(@RequestBody Map> map){
+ List cropGrowthList = map.get("cropGrowthList");
+ return toAjax(iCropsGrowthService.insertBatch(cropGrowthList));
+ }
+
+ /**
+ * 根据时间查询
+ * @param time
+ * @return
+ */
+ @GetMapping("/{time}")
+ public List selectByTime(@PathVariable("time") Date time){
+ return iCropsGrowthService.selectByTime(time);
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsStructureController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsStructureController.java
new file mode 100644
index 0000000..a3fd589
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsStructureController.java
@@ -0,0 +1,57 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.CropStructure;
+import com.ruoyi.crops.service.ICropsStructureService;
+import org.apache.ibatis.annotations.Param;
+import org.aspectj.weaver.loadtime.Aj;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.parameters.P;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 种植结构controller
+ */
+@RestController
+@RequestMapping("/crops/structure")
+public class CropsStructureController extends BaseController {
+ @Autowired
+ private ICropsStructureService iCropsStructureService;
+ /**
+ * 新增数据
+ * @param cropStructure
+ * @return
+ */
+ @PostMapping
+ public AjaxResult add(@RequestBody CropStructure cropStructure){
+ return toAjax(iCropsStructureService.insertCropsStructure(cropStructure));
+ }
+
+ /**
+ * 批量新增数据
+ * @param map map集合方式存放数组json字符串
+ * @return
+ */
+ @PostMapping("/insertBatch")
+ public AjaxResult insertBatch(@RequestBody Map> map){
+ List cropStructureList = map.get("cropStructureList");
+ return toAjax(iCropsStructureService.insertBatch(cropStructureList));
+ }
+
+ /**
+ * 根据时间查询
+ * @param time
+ * @return
+ */
+ @GetMapping("/{time}")
+ public List selectByTime(@PathVariable Date time){
+ return iCropsStructureService.selectByTime(time);
+ }
+
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsYieldConeroller.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsYieldConeroller.java
new file mode 100644
index 0000000..78d5937
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/CropsYieldConeroller.java
@@ -0,0 +1,44 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.CropsYield;
+import com.ruoyi.crops.service.ICropsYieldService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 作物产量查询
+ */
+@RestController
+@RequestMapping("/crops/yield")
+public class CropsYieldConeroller extends BaseController {
+ @Autowired
+ private ICropsYieldService iCropsYieldService;
+
+ /**
+ * 根据年份查询
+ * @param year
+ * @return
+ */
+ @GetMapping("/{year}")
+ public List selectByYear(@PathVariable Integer year){
+ return iCropsYieldService.selectByYear(year);
+ }
+
+ /**
+ * 批量新增
+ * @param map
+ * @return
+ */
+ @PostMapping("/insertBatch")
+ public AjaxResult insertBatch(@RequestBody Map> map){
+ List cropYieldList = map.get("cropYieldList");
+ return toAjax(iCropsYieldService.insertBatch(cropYieldList));
+
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/EnvironmentalController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/EnvironmentalController.java
new file mode 100644
index 0000000..2bd847e
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/EnvironmentalController.java
@@ -0,0 +1,41 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.EnvironmentalData;
+import com.ruoyi.crops.service.IEnvironmentalService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.parameters.P;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 环境数据controller
+ */
+@RestController
+@RequestMapping("/environmental")
+public class EnvironmentalController extends BaseController {
+ @Autowired
+ private IEnvironmentalService iEnvironmentalService;
+
+ /**
+ * 根据大棚编号查询
+ * @param number
+ * @return
+ */
+ @GetMapping("/{number}")
+ private List selectByNumber(@PathVariable Integer number){
+ return iEnvironmentalService.selectByNumber(number);
+ }
+
+ /**
+ * 新增单条数据
+ * @param environmentalData
+ * @return
+ */
+ @PostMapping
+ private AjaxResult insert(@RequestBody EnvironmentalData environmentalData){
+ return toAjax(iEnvironmentalService.insert(environmentalData));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/FoundationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/FoundationController.java
new file mode 100644
index 0000000..8a43114
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/FoundationController.java
@@ -0,0 +1,30 @@
+package com.ruoyi.web.controller.crops;
+
+import cn.hutool.http.HttpUtil;
+import com.google.gson.Gson;
+import com.ruoyi.crops.domain.GsonParseFoundationBean;
+import com.ruoyi.crops.service.IFoundationService;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.security.core.parameters.P;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/foundation")
+public class FoundationController {
+ @Autowired
+ private IFoundationService foundationService;
+
+ @PostMapping("/{id}")
+ public String Foundation(@PathVariable String id){
+ return foundationService.getFoundation(id);
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/Geoservercontroller.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/Geoservercontroller.java
new file mode 100644
index 0000000..341d80d
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/Geoservercontroller.java
@@ -0,0 +1,12 @@
+package com.ruoyi.web.controller.crops;
+
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController("/workspaces/PJZ/coveragestores/")
+@RequestMapping
+public class Geoservercontroller {
+// @PutMapping("/{store}/{method}.{format}")
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/GreenhouseController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/GreenhouseController.java
new file mode 100644
index 0000000..98cb4fb
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/GreenhouseController.java
@@ -0,0 +1,33 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.GreenhouseInformation;
+import com.ruoyi.crops.service.IGreenhouseService;
+import org.aspectj.weaver.loadtime.Aj;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 大棚信息controller
+ */
+@RestController
+@RequestMapping("/greenhouse/information")
+public class GreenhouseController extends BaseController {
+ @Autowired
+ private IGreenhouseService iGreenhouseService;
+
+ @GetMapping("/{name}")
+ public List selectByName(@PathVariable String name){
+ return iGreenhouseService.selectByName(name);
+ }
+
+ @PostMapping
+ public AjaxResult insert(@RequestBody GreenhouseInformation greenhouseInformation){
+ return toAjax(iGreenhouseService.insert(greenhouseInformation));
+ }
+}
+
+
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/IntelligentController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/IntelligentController.java
new file mode 100644
index 0000000..716500c
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/IntelligentController.java
@@ -0,0 +1,45 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.IntelligentControl;
+import com.ruoyi.crops.service.IIntelligentControlService;
+import org.aspectj.weaver.loadtime.Aj;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 水肥一体机智能控制controller
+ */
+@RestController
+@RequestMapping("/intelligent")
+public class IntelligentController extends BaseController {
+ @Autowired
+ private IIntelligentControlService iIntelligentControlService;
+
+ /**
+ * 新增单条数据
+ * @param intelligentControl
+ * @return
+ */
+ @PostMapping
+ public AjaxResult insert(@RequestBody IntelligentControl intelligentControl){
+ return toAjax(iIntelligentControlService.insert(intelligentControl));
+ }
+
+ /**
+ * 查询全部
+ * @return
+ */
+ @GetMapping("/list")
+ public List selectAll(){
+ return iIntelligentControlService.selectAll();
+ }
+
+ @PutMapping
+ public AjaxResult edit(@RequestBody IntelligentControl intelligentControl){
+ return toAjax(iIntelligentControlService.edit(intelligentControl));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/MachineParameterController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/MachineParameterController.java
new file mode 100644
index 0000000..3bfe8d6
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/MachineParameterController.java
@@ -0,0 +1,41 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.MachineParameter;
+import com.ruoyi.crops.service.IMachineParameterService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 水肥一体机参数controller
+ */
+@RestController
+@RequestMapping("/machine/parameter")
+public class MachineParameterController extends BaseController {
+
+ @Autowired
+ private IMachineParameterService machineParameterService;
+
+ /**
+ * 根据大棚名称进行查询
+ * @param name
+ * @return
+ */
+ @GetMapping("/{name}")
+ public List selectByName(@PathVariable String name){
+ return machineParameterService.selectByName(name);
+ }
+
+ /**
+ * 新增单条数据
+ * @param machineParameter
+ * @return
+ */
+ @PostMapping
+ public AjaxResult insert(@RequestBody MachineParameter machineParameter){
+ return toAjax(machineParameterService.insert(machineParameter));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/OperationRecordsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/OperationRecordsController.java
new file mode 100644
index 0000000..db3ce10
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/OperationRecordsController.java
@@ -0,0 +1,40 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.OperationRecords;
+import com.ruoyi.crops.service.IOperationRecordsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 操作记录controller
+ */
+@RestController
+@RequestMapping("operation/records")
+public class OperationRecordsController extends BaseController {
+ @Autowired
+ private IOperationRecordsService iOperationRecordsService;
+
+ /**
+ * 查询全部记录
+ * @return
+ */
+ @GetMapping("/list")
+ public List listAll (){
+ return iOperationRecordsService.selectAll();
+ }
+
+ /**
+ * 新增单条数据
+ * @param operationRecords
+ * @return
+ */
+ @PostMapping
+ public AjaxResult insert(@RequestBody OperationRecords operationRecords){
+ return toAjax(iOperationRecordsService.insert(operationRecords));
+ }
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/ServiceTypeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/ServiceTypeController.java
new file mode 100644
index 0000000..6682f8b
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/ServiceTypeController.java
@@ -0,0 +1,59 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.ServiceType;
+import com.ruoyi.crops.service.IServiceTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 服务类型controller
+ */
+@RestController
+@RequestMapping("/service/type")
+public class ServiceTypeController extends BaseController {
+ @Autowired
+ private IServiceTypeService typeService;
+
+ /**
+ * 根据类型查询(有参)
+ * @param type
+ * @return
+ */
+ @GetMapping("/{type}")
+ public List selectByType(@PathVariable String type){
+ return typeService.selectByType(type);
+ }
+
+ /**
+ * 无参查询全部展示
+ * @return
+ */
+ @GetMapping
+ public List selectAll(){
+ return typeService.selectAll();
+ }
+
+ /**
+ * 新增单条数据
+ * @param serviceType
+ * @return
+ */
+ @PostMapping("insert")
+ public AjaxResult insert(@RequestBody ServiceType serviceType){
+ return toAjax(typeService.insert(serviceType));
+ }
+
+ /**
+ * 根据数组批量删除数据
+ * @param ids
+ * @return
+ */
+ @DeleteMapping("/{ids}")
+ private AjaxResult remove(@PathVariable Long[] ids){
+ return toAjax(typeService.deleteByIds(ids));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/UserInfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/UserInfoController.java
new file mode 100644
index 0000000..54df37f
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/UserInfoController.java
@@ -0,0 +1,37 @@
+package com.ruoyi.web.controller.crops;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson2.JSONObject;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.User;
+import com.ruoyi.crops.domain.UserInfo;
+import com.ruoyi.crops.service.IUserInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.Duration;
+import java.util.HashMap;
+import java.util.List;
+
+@RestController
+@RequestMapping("/user/info")
+
+
+public class UserInfoController extends BaseController {
+
+ @Autowired
+ private IUserInfoService userInfoService;
+// @Scheduled(fixedDelay = 30*1000)
+ @PostMapping
+ public String userInfo(@RequestBody User user){
+ return userInfoService.login(user);
+// System.out.println("执行1次");
+ }
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/WarningController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/WarningController.java
new file mode 100644
index 0000000..293e0c6
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/crops/WarningController.java
@@ -0,0 +1,41 @@
+package com.ruoyi.web.controller.crops;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.crops.domain.WarningInformation;
+import com.ruoyi.crops.service.IWarningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 预警信息controller
+ */
+@RestController
+@RequestMapping("warning/information")
+public class WarningController extends BaseController {
+ @Autowired
+ private IWarningService iWarningService;
+
+ /**
+ * 根据大棚编号查询
+ * @param number
+ * @return
+ */
+ @GetMapping("/{number}")
+ public List selectByNumber(@PathVariable Integer number){
+ return iWarningService.selectByNumber(number);
+ }
+
+ /**
+ * 新增单条数据
+ * @param warningInformation
+ * @return
+ */
+ @PostMapping
+ public AjaxResult insert(@RequestBody WarningInformation warningInformation){
+ return toAjax(iWarningService.insert(warningInformation));
+ }
+}
+
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/pill/PillFactoryController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/pill/PillFactoryController.java
new file mode 100644
index 0000000..16617a8
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/pill/PillFactoryController.java
@@ -0,0 +1,98 @@
+package com.ruoyi.web.controller.pill;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.pill.domain.PillFactory;
+import com.ruoyi.pill.service.IPillFactoryService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 生产厂家信息Controller
+ *
+ * @author my
+ * @date 2023-04-18
+ */
+@RestController
+@RequestMapping("/pill/factory")
+public class PillFactoryController extends BaseController
+{
+ @Autowired
+ private IPillFactoryService pillFactoryService;
+
+ /**
+ * 查询生产厂家信息列表
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(PillFactory pillFactory)
+ {
+ startPage();
+ List list = pillFactoryService.selectPillFactoryList(pillFactory);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出生产厂家信息列表
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:export')")
+ @Log(title = "生产厂家信息", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, PillFactory pillFactory)
+ {
+ List list = pillFactoryService.selectPillFactoryList(pillFactory);
+ ExcelUtil util = new ExcelUtil(PillFactory.class);
+ util.exportExcel(response, list, "生产厂家信息数据");
+ }
+
+ /**
+ * 获取生产厂家信息详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:query')")
+ @GetMapping(value = "/{factoryId}")
+ public AjaxResult getInfo(@PathVariable("factoryId") Long factoryId)
+ {
+ return success(pillFactoryService.selectPillFactoryByFactoryId(factoryId));
+ }
+
+ /**
+ * 新增生产厂家信息
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:add')")
+ @Log(title = "生产厂家信息", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody PillFactory pillFactory)
+ {
+ return toAjax(pillFactoryService.insertPillFactory(pillFactory));
+ }
+
+ /**
+ * 修改生产厂家信息
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:edit')")
+ @Log(title = "生产厂家信息", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody PillFactory pillFactory)
+ {
+ return toAjax(pillFactoryService.updatePillFactory(pillFactory));
+ }
+
+ /**
+ * 删除生产厂家信息
+ */
+ @PreAuthorize("@ss.hasPermi('pill:factory:remove')")
+ @Log(title = "生产厂家信息", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{factoryIds}")
+ public AjaxResult remove(@PathVariable Long[] factoryIds)
+ {
+ return toAjax(pillFactoryService.deletePillFactoryByFactoryIds(factoryIds));
+ }
+}
diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml
index bcfad3e..4c7f5ec 100644
--- a/ruoyi-admin/src/main/resources/application-druid.yml
+++ b/ruoyi-admin/src/main/resources/application-druid.yml
@@ -6,9 +6,9 @@ spring:
druid:
# 主库数据源
master:
- url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+ url: jdbc:mysql://localhost:3306/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
- password: password
+ password: 123456
# 从库数据源
slave:
# 从数据源开关/默认关闭
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index acb28b4..87b7da3 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -53,7 +53,7 @@ spring:
messages:
# 国际化资源文件路径
basename: i18n/messages
- profiles:
+ profiles:
active: druid
# 文件上传
servlet:
@@ -76,7 +76,7 @@ spring:
# 数据库索引
database: 0
# 密码
- password:
+ password:
# 连接超时时间
timeout: 10s
lettuce:
@@ -98,7 +98,7 @@ token:
secret: abcdefghijklmnopqrstuvwxyz
# 令牌有效期(默认30分钟)
expireTime: 30
-
+
# MyBatis配置
mybatis:
# 搜索指定包别名
@@ -109,10 +109,10 @@ mybatis:
configLocation: classpath:mybatis/mybatis-config.xml
# PageHelper分页插件
-pagehelper:
+pagehelper:
helperDialect: mysql
supportMethodsArguments: true
- params: count=countSql
+ params: count=countSql
# Swagger配置
swagger:
@@ -122,10 +122,14 @@ swagger:
pathMapping: /dev-api
# 防止XSS攻击
-xss:
+xss:
# 过滤开关
enabled: true
# 排除链接(多个用逗号分隔)
excludes: /system/notice
# 匹配链接
urlPatterns: /system/*,/monitor/*,/tool/*
+
+url:
+ foundation: 'http://api.nonghaiiot.com/api/foundation/getFoundationByUserId.zzdy'
+ userInfo: 'http://api.nonghaiiot.com/admin/sys/login'
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/web/PssTest.java b/ruoyi-admin/src/test/java/com/ruoyi/web/PssTest.java
new file mode 100644
index 0000000..94694f7
--- /dev/null
+++ b/ruoyi-admin/src/test/java/com/ruoyi/web/PssTest.java
@@ -0,0 +1,21 @@
+package com.ruoyi.web;
+
+import com.ruoyi.pill.domain.PillFactory;
+import com.ruoyi.pill.service.IPillFactoryService;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+public class PssTest {
+ @Autowired
+ private IPillFactoryService IpillFactoryService;
+
+ @Test
+ public void testSelectFactory(){
+ PillFactory pillFactory = new PillFactory();
+ pillFactory.setFactoryName("云南");
+ IpillFactoryService.selectPillFactoryList(pillFactory);
+
+ }
+}
diff --git a/ruoyi-crops/pom.xml b/ruoyi-crops/pom.xml
new file mode 100644
index 0000000..ee2a4e9
--- /dev/null
+++ b/ruoyi-crops/pom.xml
@@ -0,0 +1,35 @@
+
+
+
+ ruoyi
+ com.ruoyi
+ 3.8.5
+
+ 4.0.0
+
+ ruoyi-crops
+
+
+ com.ruoyi
+ ruoyi-common
+
+
+ cn.hutool
+ hutool-all
+ 5.7.1
+ compile
+
+
+ com.google.code.gson
+ gson
+
+
+
+
+ 17
+ 17
+
+
+
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropStructure.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropStructure.java
new file mode 100644
index 0000000..a1122dd
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropStructure.java
@@ -0,0 +1,123 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.io.Serializable;
+import java.util.Date;
+
+ /**
+ * 作物种植结构;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-24
+ */
+
+public class CropStructure{
+ /** id */
+
+ private Integer id ;
+ /** 区域 */
+ private String zone ;
+ /** 时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date imageDate ;
+ /** 小麦面积 */
+ private Double wheatArea ;
+ /** 玉米面积 */
+ private Double cornArea ;
+ /** 花生面积 */
+ private Double peanutArea ;
+ /** 大豆面积 */
+ private Double soybeanArea ;
+ /** 其他面积 */
+ private Double otherArea ;
+ /** 总面积 */
+ private Double toalArea ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public Date getImageDate() {
+ return imageDate;
+ }
+
+ public void setImageDate(Date imageDate) {
+ this.imageDate = imageDate;
+ }
+
+ public Double getWheatArea() {
+ return wheatArea;
+ }
+
+ public void setWheatArea(Double wheatArea) {
+ this.wheatArea = wheatArea;
+ }
+
+ public Double getCornArea() {
+ return cornArea;
+ }
+
+ public void setCornArea(Double cornArea) {
+ this.cornArea = cornArea;
+ }
+
+ public Double getPeanutArea() {
+ return peanutArea;
+ }
+
+ public void setPeanutArea(Double peanutArea) {
+ this.peanutArea = peanutArea;
+ }
+
+ public Double getSoybeanArea() {
+ return soybeanArea;
+ }
+
+ public void setSoybeanArea(Double soybeanArea) {
+ this.soybeanArea = soybeanArea;
+ }
+
+ public Double getOtherArea() {
+ return otherArea;
+ }
+
+ public void setOtherArea(Double otherArea) {
+ this.otherArea = otherArea;
+ }
+
+ public Double getToalArea() {
+ return toalArea;
+ }
+
+ public void setToalArea(Double toalArea) {
+ this.toalArea = toalArea;
+ }
+
+ @Override
+ public String toString() {
+ return "CropStructure{" +
+ "id=" + id +
+ ", zone='" + zone + '\'' +
+ ", imageDate=" + imageDate +
+ ", wheatArea=" + wheatArea +
+ ", cornArea=" + cornArea +
+ ", peanutArea=" + peanutArea +
+ ", soybeanArea=" + soybeanArea +
+ ", otherArea=" + otherArea +
+ ", toalArea=" + toalArea +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsComprehensiveData.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsComprehensiveData.java
new file mode 100644
index 0000000..3c1b993
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsComprehensiveData.java
@@ -0,0 +1,319 @@
+package com.ruoyi.crops.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 作物综合数据对象 crops_comprehensive_data
+ *
+ * @author my
+ * @date 2023-04-20
+ */
+public class CropsComprehensiveData extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** id */
+ private Long id;
+
+ /** 镇耕地面积(万亩) */
+ @Excel(name = "镇耕地面积(万亩)")
+ private Float cultivatedArea;
+
+ /** 粮食总产(万吨) */
+ @Excel(name = "粮食总产(万吨)")
+ private Float foodstuffProduction;
+
+ /** 蔬菜种植面积(亩) */
+ @Excel(name = "蔬菜种植面积(亩)")
+ private Long vegetablePlantingArea;
+
+ /** 蔬菜总产(吨) */
+ @Excel(name = "蔬菜总产(吨)")
+ private Long vegetableProduction;
+
+ /** 农产品种类 */
+ @Excel(name = "农产品种类")
+ private Long type;
+
+ /** 农产品种植面积(亩) */
+ @Excel(name = "农产品种植面积(亩)")
+ private Long agriculturalPlantingArea;
+
+ /** 特色农业总产量(吨) */
+ @Excel(name = "特色农业总产量(吨)")
+ private Long agricultureProduction;
+
+ /** 特色农业年产值(万元) */
+ @Excel(name = "特色农业年产值(万元)")
+ private Long agricultureOutputVaule;
+
+ /** 总人口(人) */
+ @Excel(name = "总人口(人)")
+ private Long totalPopulation;
+
+ /** 占地面积(平方公里) */
+ @Excel(name = "占地面积(平方公里)")
+ private Float coverArea;
+
+ /** 示范大棚数量(个) */
+ @Excel(name = "示范大棚数量(个)")
+ private Long exampleGreenhouse;
+
+ /** 村居数量(个) */
+ @Excel(name = "村居数量(个)")
+ private Long rusticate;
+
+ /** 联合社耕地面积(万亩) */
+ @Excel(name = "联合社耕地面积(万亩)")
+ private Float cultivatedAlly;
+
+ /** 大棚数量(个) */
+ @Excel(name = "大棚数量(个)")
+ private Long greenhouse;
+
+ /** 农产品产值(万元) */
+ @Excel(name = "农产品产值(万元)")
+ private Long outputValue;
+
+ /** 庞家镇矢量边界 */
+ @Excel(name = "庞家镇矢量边界")
+ private String vectorBoundary;
+
+ /** 庞家镇村庄矢量边界 */
+ @Excel(name = "庞家镇村庄矢量边界")
+ private String villageVectorBoundary;
+
+ /** 图片 */
+ private String img;
+
+ /** 创建人 */
+ @Excel(name = "创建人")
+ private String createdBy;
+
+ /** 创建时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date createdTime;
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setCultivatedArea(Float cultivatedArea)
+ {
+ this.cultivatedArea = cultivatedArea;
+ }
+
+ public Float getCultivatedArea()
+ {
+ return cultivatedArea;
+ }
+ public void setFoodstuffProduction(Float foodstuffProduction)
+ {
+ this.foodstuffProduction = foodstuffProduction;
+ }
+
+ public Float getFoodstuffProduction()
+ {
+ return foodstuffProduction;
+ }
+ public void setVegetablePlantingArea(Long vegetablePlantingArea)
+ {
+ this.vegetablePlantingArea = vegetablePlantingArea;
+ }
+
+ public Long getVegetablePlantingArea()
+ {
+ return vegetablePlantingArea;
+ }
+ public void setVegetableProduction(Long vegetableProduction)
+ {
+ this.vegetableProduction = vegetableProduction;
+ }
+
+ public Long getVegetableProduction()
+ {
+ return vegetableProduction;
+ }
+ public void setType(Long type)
+ {
+ this.type = type;
+ }
+
+ public Long getType()
+ {
+ return type;
+ }
+ public void setAgriculturalPlantingArea(Long agriculturalPlantingArea)
+ {
+ this.agriculturalPlantingArea = agriculturalPlantingArea;
+ }
+
+ public Long getAgriculturalPlantingArea()
+ {
+ return agriculturalPlantingArea;
+ }
+ public void setAgricultureProduction(Long agricultureProduction)
+ {
+ this.agricultureProduction = agricultureProduction;
+ }
+
+ public Long getAgricultureProduction()
+ {
+ return agricultureProduction;
+ }
+ public void setAgricultureOutputVaule(Long agricultureOutputVaule)
+ {
+ this.agricultureOutputVaule = agricultureOutputVaule;
+ }
+
+ public Long getAgricultureOutputVaule()
+ {
+ return agricultureOutputVaule;
+ }
+ public void setTotalPopulation(Long totalPopulation)
+ {
+ this.totalPopulation = totalPopulation;
+ }
+
+ public Long getTotalPopulation()
+ {
+ return totalPopulation;
+ }
+ public void setCoverArea(Float coverArea)
+ {
+ this.coverArea = coverArea;
+ }
+
+ public Float getCoverArea()
+ {
+ return coverArea;
+ }
+ public void setExampleGreenhouse(Long exampleGreenhouse)
+ {
+ this.exampleGreenhouse = exampleGreenhouse;
+ }
+
+ public Long getExampleGreenhouse()
+ {
+ return exampleGreenhouse;
+ }
+ public void setRusticate(Long rusticate)
+ {
+ this.rusticate = rusticate;
+ }
+
+ public Long getRusticate()
+ {
+ return rusticate;
+ }
+ public void setCultivatedAlly(Float cultivatedAlly)
+ {
+ this.cultivatedAlly = cultivatedAlly;
+ }
+
+ public Float getCultivatedAlly()
+ {
+ return cultivatedAlly;
+ }
+ public void setGreenhouse(Long greenhouse)
+ {
+ this.greenhouse = greenhouse;
+ }
+
+ public Long getGreenhouse()
+ {
+ return greenhouse;
+ }
+ public void setOutputValue(Long outputValue)
+ {
+ this.outputValue = outputValue;
+ }
+
+ public Long getOutputValue()
+ {
+ return outputValue;
+ }
+ public void setVectorBoundary(String vectorBoundary)
+ {
+ this.vectorBoundary = vectorBoundary;
+ }
+
+ public String getVectorBoundary()
+ {
+ return vectorBoundary;
+ }
+ public void setVillageVectorBoundary(String villageVectorBoundary)
+ {
+ this.villageVectorBoundary = villageVectorBoundary;
+ }
+
+ public String getVillageVectorBoundary()
+ {
+ return villageVectorBoundary;
+ }
+ public void setCreatedBy(String createdBy)
+ {
+ this.createdBy = createdBy;
+ }
+
+ public String getCreatedBy()
+ {
+ return createdBy;
+ }
+ public void setCreatedTime(Date createdTime)
+ {
+ this.createdTime = createdTime;
+ }
+
+ public Date getCreatedTime()
+ {
+ return createdTime;
+ }
+
+ public String getImg() {
+ return img;
+ }
+
+ public void setImg(String img) {
+ this.img = img;
+ }
+
+ @Override
+ public String toString() {
+ return "CropsComprehensiveData{" +
+ "id=" + id +
+ ", cultivatedArea=" + cultivatedArea +
+ ", foodstuffProduction=" + foodstuffProduction +
+ ", vegetablePlantingArea=" + vegetablePlantingArea +
+ ", vegetableProduction=" + vegetableProduction +
+ ", type=" + type +
+ ", agriculturalPlantingArea=" + agriculturalPlantingArea +
+ ", agricultureProduction=" + agricultureProduction +
+ ", agricultureOutputVaule=" + agricultureOutputVaule +
+ ", totalPopulation=" + totalPopulation +
+ ", coverArea=" + coverArea +
+ ", exampleGreenhouse=" + exampleGreenhouse +
+ ", rusticate=" + rusticate +
+ ", cultivatedAlly=" + cultivatedAlly +
+ ", greenhouse=" + greenhouse +
+ ", outputValue=" + outputValue +
+ ", vectorBoundary='" + vectorBoundary + '\'' +
+ ", villageVectorBoundary='" + villageVectorBoundary + '\'' +
+ ", img='" + img + '\'' +
+ ", createdBy='" + createdBy + '\'' +
+ ", createdTime=" + createdTime +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsDrought.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsDrought.java
new file mode 100644
index 0000000..8d9c5a9
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsDrought.java
@@ -0,0 +1,110 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+ /**
+ * 作物旱情;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-24
+ */
+public class CropsDrought implements Serializable,Cloneable{
+ /** id */
+ private Integer id ;
+ /** 区域 */
+ private String zone ;
+ /** 时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date imageDate ;
+ /** 严重干旱面积 */
+ private Double severeArea ;
+ /** 中度干旱面积 */
+ private Double modArea ;
+ /** 轻度干旱面积 */
+ private Double mildArea ;
+ /** 适宜面积 */
+ private Double suitArea ;
+ /** 湿润面积 */
+ private Double humidArea ;
+
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public Date getImageDate() {
+ return imageDate;
+ }
+
+ public void setImageDate(Date imageDate) {
+ this.imageDate = imageDate;
+ }
+
+ public Double getSevereArea() {
+ return severeArea;
+ }
+
+ public void setSevereArea(Double severeArea) {
+ this.severeArea = severeArea;
+ }
+
+ public Double getModArea() {
+ return modArea;
+ }
+
+ public void setModArea(Double modArea) {
+ this.modArea = modArea;
+ }
+
+ public Double getMildArea() {
+ return mildArea;
+ }
+
+ public void setMildArea(Double mildArea) {
+ this.mildArea = mildArea;
+ }
+
+ public Double getSuitArea() {
+ return suitArea;
+ }
+
+ public void setSuitArea(Double suitArea) {
+ this.suitArea = suitArea;
+ }
+
+ public Double getHumidArea() {
+ return humidArea;
+ }
+
+ public void setHumidArea(Double humidArea) {
+ this.humidArea = humidArea;
+ }
+
+ @Override
+ public String toString() {
+ return "CropsDrought{" +
+ "id=" + id +
+ ", zone='" + zone + '\'' +
+ ", imageDate=" + imageDate +
+ ", severeArea=" + severeArea +
+ ", modArea=" + modArea +
+ ", mildArea=" + mildArea +
+ ", suitArea=" + suitArea +
+ ", humidArea=" + humidArea +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsGrowth.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsGrowth.java
new file mode 100644
index 0000000..1382533
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsGrowth.java
@@ -0,0 +1,110 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.util.Date;
+
+ /**
+ * 作物长势;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-24
+ */
+public class CropsGrowth {
+ /** id */
+ private Integer id ;
+ /** 区域 */
+ private String zone ;
+ /** 时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date imageDate ;
+ /** 长势差面积 */
+ private Double poorArea ;
+ /** 长势较差面积 */
+ private Double lowArea ;
+ /** 长势适中面积 */
+ private Double mediumArea ;
+ /** 长势较好面积 */
+ private Double goodArea ;
+ /** 长势好面积 */
+ private Double excellentArea ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public Date getImageDate() {
+ return imageDate;
+ }
+
+ public void setImageDate(Date imageDate) {
+ this.imageDate = imageDate;
+ }
+
+ public Double getPoorArea() {
+ return poorArea;
+ }
+
+ public void setPoorArea(Double poorArea) {
+ this.poorArea = poorArea;
+ }
+
+ public Double getLowArea() {
+ return lowArea;
+ }
+
+ public void setLowArea(Double lowArea) {
+ this.lowArea = lowArea;
+ }
+
+ public Double getMediumArea() {
+ return mediumArea;
+ }
+
+ public void setMediumArea(Double mediumArea) {
+ this.mediumArea = mediumArea;
+ }
+
+ public Double getGoodArea() {
+ return goodArea;
+ }
+
+ public void setGoodArea(Double goodArea) {
+ this.goodArea = goodArea;
+ }
+
+ public Double getExcellentArea() {
+ return excellentArea;
+ }
+
+ public void setExcellentArea(Double excellentArea) {
+ this.excellentArea = excellentArea;
+ }
+
+ @Override
+ public String toString() {
+ return "CropsGrowth{" +
+ "id=" + id +
+ ", zone='" + zone + '\'' +
+ ", imageDate=" + imageDate +
+ ", poorArea=" + poorArea +
+ ", lowArea=" + lowArea +
+ ", mediumArea=" + mediumArea +
+ ", goodArea=" + goodArea +
+ ", excellentArea=" + excellentArea +
+ '}';
+ }
+ }
+
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsYield.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsYield.java
new file mode 100644
index 0000000..8d0e8f7
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/CropsYield.java
@@ -0,0 +1,71 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+public class CropsYield {
+ /** id */
+ private Integer id ;
+ /** 区域 */
+ private String zone ;
+ /** 时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date imageDate ;
+ /** 作物类型 */
+ private String cropType ;
+ /** 产量 */
+ private Double yield ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public Date getImageDate() {
+ return imageDate;
+ }
+
+ public void setImageDate(Date imageDate) {
+ this.imageDate = imageDate;
+ }
+
+ public String getCropType() {
+ return cropType;
+ }
+
+ public void setCropType(String croptype) {
+ this.cropType = croptype;
+ }
+
+ public Double getYield() {
+ return yield;
+ }
+
+ public void setYield(Double yield) {
+ this.yield = yield;
+ }
+
+ @Override
+ public String toString() {
+ return "CropsYield{" +
+ "id=" + id +
+ ", zone='" + zone + '\'' +
+ ", imageDate=" + imageDate +
+ ", cropType='" + cropType + '\'' +
+ ", yield=" + yield +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/EnvironmentalData.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/EnvironmentalData.java
new file mode 100644
index 0000000..4aed2d6
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/EnvironmentalData.java
@@ -0,0 +1,116 @@
+package com.ruoyi.crops.domain;
+
+ /**
+ * 环境数据;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class EnvironmentalData{
+ /** id */
+ private Integer id ;
+ /**
+ * 大棚编号
+ */
+ private Integer greenhouseNumber;
+ /** 土壤温度 */
+ private Double soilTemperature ;
+ /** 土壤湿度 */
+ private Double soilHumidity ;
+ /** 氮含量 */
+ private Integer nitrogenContent ;
+ /** 磷含量 */
+ private Integer phosphorusContent ;
+ /** 钾含量 */
+ private Integer potassiumContent ;
+ /** 空气温度 */
+ private Double airTemperature ;
+ /** 空气湿度 */
+ private Double airHumidity ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public Integer getGreenhouseNumber() {
+ return greenhouseNumber;
+ }
+
+ public void setGreenhouseNumber(Integer greenhouseNumber) {
+ this.greenhouseNumber = greenhouseNumber;
+ }
+
+ public Double getSoilTemperature() {
+ return soilTemperature;
+ }
+
+ public void setSoilTemperature(Double soilTemperature) {
+ this.soilTemperature = soilTemperature;
+ }
+
+ public Double getSoilHumidity() {
+ return soilHumidity;
+ }
+
+ public void setSoilHumidity(Double soilHumidity) {
+ this.soilHumidity = soilHumidity;
+ }
+
+ public Integer getNitrogenContent() {
+ return nitrogenContent;
+ }
+
+ public void setNitrogenContent(Integer nitrogenContent) {
+ this.nitrogenContent = nitrogenContent;
+ }
+
+ public Integer getPhosphorusContent() {
+ return phosphorusContent;
+ }
+
+ public void setPhosphorusContent(Integer phosphorusContent) {
+ this.phosphorusContent = phosphorusContent;
+ }
+
+ public Integer getPotassiumContent() {
+ return potassiumContent;
+ }
+
+ public void setPotassiumContent(Integer potassiumContent) {
+ this.potassiumContent = potassiumContent;
+ }
+
+ public Double getAirTemperature() {
+ return airTemperature;
+ }
+
+ public void setAirTemperature(Double airTemperature) {
+ this.airTemperature = airTemperature;
+ }
+
+ public Double getAirHumidity() {
+ return airHumidity;
+ }
+
+ public void setAirHumidity(Double airHumidity) {
+ this.airHumidity = airHumidity;
+ }
+
+ @Override
+ public String toString() {
+ return "EnvironmentalData{" +
+ "id=" + id +
+ ", greenhouseNumber=" + greenhouseNumber +
+ ", soilTemperature=" + soilTemperature +
+ ", soilHumidity=" + soilHumidity +
+ ", nitrogenContent=" + nitrogenContent +
+ ", phosphorusContent=" + phosphorusContent +
+ ", potassiumContent=" + potassiumContent +
+ ", airTemperature=" + airTemperature +
+ ", airHumidity=" + airHumidity +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GreenhouseInformation.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GreenhouseInformation.java
new file mode 100644
index 0000000..700b1c2
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GreenhouseInformation.java
@@ -0,0 +1,59 @@
+package com.ruoyi.crops.domain;
+
+ /**
+ * 大棚信息;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class GreenhouseInformation {
+ /** id */
+ private Integer id ;
+ /** 区域 */
+ private String zone ;
+ /** 经营模式 */
+ private String managementModel ;
+ /** 园区介绍 */
+ private String introduce ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getZone() {
+ return zone;
+ }
+
+ public void setZone(String zone) {
+ this.zone = zone;
+ }
+
+ public String getManagementModel() {
+ return managementModel;
+ }
+
+ public void setManagementModel(String managementModel) {
+ this.managementModel = managementModel;
+ }
+
+ public String getIntroduce() {
+ return introduce;
+ }
+
+ public void setIntroduce(String introduce) {
+ this.introduce = introduce;
+ }
+
+ @Override
+ public String toString() {
+ return "GreenhouseInformation{" +
+ "id=" + id +
+ ", zone='" + zone + '\'' +
+ ", managementModel='" + managementModel + '\'' +
+ ", introduce='" + introduce + '\'' +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GsonParseFoundationBean.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GsonParseFoundationBean.java
new file mode 100644
index 0000000..1aaf9fe
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/GsonParseFoundationBean.java
@@ -0,0 +1,21 @@
+package com.ruoyi.crops.domain;
+
+import javax.xml.crypto.Data;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class GsonParseFoundationBean {
+
+ public Integer code;
+ public ArrayList data;
+ public String msg;
+ public Boolean result;
+ public String time;
+
+ public class Foundation {
+ public Integer foundationId;
+ public String foundationName;
+ }
+
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/IntelligentControl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/IntelligentControl.java
new file mode 100644
index 0000000..419ddd4
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/IntelligentControl.java
@@ -0,0 +1,82 @@
+package com.ruoyi.crops.domain;
+import java.io.Serializable;
+
+/**
+ * 水肥一体机智能控制;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class IntelligentControl{
+ /** id */
+ private Integer id ;
+ /** 大棚名称 */
+ private String greenhouseName ;
+ /** 阀门编号 */
+ private Integer valveNumber ;
+ /** 阀门状态 */
+ private Integer valveStatus ;
+ /** 开关 */
+ private Integer disjunctor ;
+ /** 进度 */
+ private Double schedule;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getGreenhouseName() {
+ return greenhouseName;
+ }
+
+ public void setGreenhouseName(String greenhouseName) {
+ this.greenhouseName = greenhouseName;
+ }
+
+ public Integer getValveNumber() {
+ return valveNumber;
+ }
+
+ public void setValveNumber(Integer valveNumber) {
+ this.valveNumber = valveNumber;
+ }
+
+ public Integer getValveStatus() {
+ return valveStatus;
+ }
+
+ public void setValveStatus(Integer valveStatus) {
+ this.valveStatus = valveStatus;
+ }
+
+ public Integer getDisjunctor() {
+ return disjunctor;
+ }
+
+ public void setDisjunctor(Integer option) {
+ this.disjunctor = option;
+ }
+
+ public Double getSchedule() {
+ return schedule;
+ }
+
+ public void setSchedule(Double schedule) {
+ this.schedule = schedule;
+ }
+
+ @Override
+ public String toString() {
+ return "IntelligentControl{" +
+ "id=" + id +
+ ", greenhouseName='" + greenhouseName + '\'' +
+ ", valveNumber=" + valveNumber +
+ ", valveStatus=" + valveStatus +
+ ", option=" + disjunctor +
+ ", schedule=" + schedule +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/MachineParameter.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/MachineParameter.java
new file mode 100644
index 0000000..d1b6043
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/MachineParameter.java
@@ -0,0 +1,70 @@
+package com.ruoyi.crops.domain;
+
+/**
+ * 水肥一体机参数;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class MachineParameter{
+ /** id */
+ private String id ;
+ /** 大棚名称 */
+ private String greenhouseName ;
+ /** 压力 */
+ private Double pressure ;
+ /** 流量 */
+ private Double flow ;
+ /** 电导率 */
+ private Double conductivity ;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getGreenhouseName() {
+ return greenhouseName;
+ }
+
+ public void setGreenhouseName(String greenhouseName) {
+ this.greenhouseName = greenhouseName;
+ }
+
+ public Double getPressure() {
+ return pressure;
+ }
+
+ public void setPressure(Double pressure) {
+ this.pressure = pressure;
+ }
+
+ public Double getFlow() {
+ return flow;
+ }
+
+ public void setFlow(Double flow) {
+ this.flow = flow;
+ }
+
+ public Double getConductivity() {
+ return conductivity;
+ }
+
+ public void setConductivity(Double conductivity) {
+ this.conductivity = conductivity;
+ }
+
+ @Override
+ public String toString() {
+ return "MachineParameter{" +
+ "id='" + id + '\'' +
+ ", greenhouseName='" + greenhouseName + '\'' +
+ ", pressure=" + pressure +
+ ", flow=" + flow +
+ ", conductivity=" + conductivity +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/OperationRecords.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/OperationRecords.java
new file mode 100644
index 0000000..5cdadd1
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/OperationRecords.java
@@ -0,0 +1,64 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.util.Date;
+
+/**
+ * 操作记录;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class OperationRecords {
+ /** id */
+ private String id ;
+ /** 更新时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date updateTime ;
+ /** 操作内容 */
+ private String operationContent ;
+ /** 更新人 */
+ private String updateBy ;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public Date getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(Date updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getOperationContent() {
+ return operationContent;
+ }
+
+ public void setOperationContent(String operationContent) {
+ this.operationContent = operationContent;
+ }
+
+ public String getUpdateBy() {
+ return updateBy;
+ }
+
+ public void setUpdateBy(String updateBy) {
+ this.updateBy = updateBy;
+ }
+
+ @Override
+ public String toString() {
+ return "OperationRecords{" +
+ "id='" + id + '\'' +
+ ", updateTime=" + updateTime +
+ ", operationContent='" + operationContent + '\'' +
+ ", updateBy='" + updateBy + '\'' +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/ServiceType.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/ServiceType.java
new file mode 100644
index 0000000..52280e9
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/ServiceType.java
@@ -0,0 +1,74 @@
+package com.ruoyi.crops.domain;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.util.Date;
+
+ /**
+ * 服务类型;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-26
+ */
+public class ServiceType {
+ /** id */
+ private Integer id ;
+ /** 服务类型 */
+ private String serviceType ;
+ /** 时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date time ;
+ /** 服务名称 */
+ private String serviceName ;
+ /** 样式 */
+ private String style ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getServiceType() {
+ return serviceType;
+ }
+
+ public void setServiceType(String serviceType) {
+ this.serviceType = serviceType;
+ }
+
+ public Date getTime() {
+ return time;
+ }
+
+ public void setTime(Date time) {
+ this.time = time;
+ }
+
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ public void setServiceName(String serviceName) {
+ this.serviceName = serviceName;
+ }
+
+ public String getStyle() {
+ return style;
+ }
+
+ public void setStyle(String style) {
+ this.style = style;
+ }
+
+ @Override
+ public String toString() {
+ return "ServiceType{" +
+ "id=" + id +
+ ", serviceType='" + serviceType + '\'' +
+ ", time=" + time +
+ ", serviceName='" + serviceName + '\'' +
+ ", style='" + style + '\'' +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/User.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/User.java
new file mode 100644
index 0000000..f0ffae3
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/User.java
@@ -0,0 +1,30 @@
+package com.ruoyi.crops.domain;
+
+public class User {
+ private String username;
+ private String password;
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ @Override
+ public String toString() {
+ return "User{" +
+ "username='" + username + '\'' +
+ ", password='" + password + '\'' +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/UserInfo.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/UserInfo.java
new file mode 100644
index 0000000..2440639
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/UserInfo.java
@@ -0,0 +1,52 @@
+package com.ruoyi.crops.domain;
+
+import java.util.Date;
+
+public class UserInfo {
+ private String id;
+ private String token;
+ private Long expire;
+ private String userInfo;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getToken() {
+ return token;
+ }
+
+ public void setToken(String token) {
+ this.token = token;
+ }
+
+ public Long getExpire() {
+ return expire;
+ }
+
+ public void setExpire(Long expire) {
+ this.expire = expire;
+ }
+
+ public String getUserInfo() {
+ return userInfo;
+ }
+
+ public void setUserInfo(String userInfo) {
+ this.userInfo = userInfo;
+ }
+
+ @Override
+ public String toString() {
+ return "UserInfo{" +
+ "id=" + id +
+ ", token='" + token + '\'' +
+ ", expire=" + expire +
+ ", userInfo='" + userInfo + '\'' +
+ '}';
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/WarningInformation.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/WarningInformation.java
new file mode 100644
index 0000000..b92f5af
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/domain/WarningInformation.java
@@ -0,0 +1,86 @@
+package com.ruoyi.crops.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.util.Date;
+
+ /**
+ * 预警信息统计;
+ * @author : http://www.chiner.pro
+ * @date : 2023-4-27
+ */
+public class WarningInformation{
+ /** id */
+ private Integer id ;
+ /** 大棚编号 */
+ private Integer greenhouseNumber ;
+ /** 监测指标 */
+ private String monitoringIndicators ;
+ /** 监测数值 */
+ private Double monitoringValues ;
+ /** 异常原因 */
+ private String abnormalCause ;
+ /** 预警时间 */
+ @JsonFormat(pattern = "yyyy/MM/dd")
+ private Date warningTime ;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public Integer getGreenhouseNumber() {
+ return greenhouseNumber;
+ }
+
+ public void setGreenhouseName(Integer greenhouseNumber) {
+ this.greenhouseNumber = greenhouseNumber;
+ }
+
+ public String getMonitoringIndicators() {
+ return monitoringIndicators;
+ }
+
+ public void setMonitoringIndicators(String monitoringIndicators) {
+ this.monitoringIndicators = monitoringIndicators;
+ }
+
+ public Double getMonitoringValues() {
+ return monitoringValues;
+ }
+
+ public void setMonitoringValues(Double monitoringValues) {
+ this.monitoringValues = monitoringValues;
+ }
+
+ public String getAbnormalCause() {
+ return abnormalCause;
+ }
+
+ public void setAbnormalCause(String abnormalCause) {
+ this.abnormalCause = abnormalCause;
+ }
+
+ public Date getWarningTime() {
+ return warningTime;
+ }
+
+ public void setWarningTime(Date warningTime) {
+ this.warningTime = warningTime;
+ }
+
+ @Override
+ public String toString() {
+ return "WarningInformation{" +
+ "id=" + id +
+ ", greenhouseName=" + greenhouseNumber +
+ ", monitoringIndicators='" + monitoringIndicators + '\'' +
+ ", monitoringValues=" + monitoringValues +
+ ", abnormalCause='" + abnormalCause + '\'' +
+ ", warningTime=" + warningTime +
+ '}';
+ }
+ }
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsComprehensiveDataMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsComprehensiveDataMapper.java
new file mode 100644
index 0000000..395a008
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsComprehensiveDataMapper.java
@@ -0,0 +1,61 @@
+package com.ruoyi.crops.mapper;
+
+import java.util.List;
+import com.ruoyi.crops.domain.CropsComprehensiveData;
+
+/**
+ * 作物综合数据Mapper接口
+ *
+ * @author my
+ * @date 2023-04-20
+ */
+public interface CropsComprehensiveDataMapper
+{
+ /**
+ * 查询作物综合数据
+ *
+ * @param id 作物综合数据主键
+ * @return 作物综合数据
+ */
+ public CropsComprehensiveData selectCropsComprehensiveDataById(Long id);
+
+ /**
+ * 查询作物综合数据列表
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 作物综合数据集合
+ */
+ public List selectCropsComprehensiveDataList(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 新增作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ public int insertCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 修改作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ public int updateCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 删除作物综合数据
+ *
+ * @param id 作物综合数据主键
+ * @return 结果
+ */
+ public int deleteCropsComprehensiveDataById(Long id);
+
+ /**
+ * 批量删除作物综合数据
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteCropsComprehensiveDataByIds(Long[] ids);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsDroughtMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsDroughtMapper.java
new file mode 100644
index 0000000..cbcca64
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsDroughtMapper.java
@@ -0,0 +1,13 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.CropsDrought;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+public interface CropsDroughtMapper {
+ public int insertBatch(@Param("list") List cropsDroughtList);
+
+ List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsGrowthMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsGrowthMapper.java
new file mode 100644
index 0000000..7cb63e5
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsGrowthMapper.java
@@ -0,0 +1,14 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.CropsGrowth;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+public interface CropsGrowthMapper {
+
+ public int insertBatch(@Param("list")List list);
+
+ public List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsStructureMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsStructureMapper.java
new file mode 100644
index 0000000..5c2b060
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsStructureMapper.java
@@ -0,0 +1,20 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.CropStructure;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+public interface CropsStructureMapper {
+ /**
+ * 新增作物种植结构
+ * @param cropStructure
+ * @return
+ */
+ public int insertCropsStructure(CropStructure cropStructure);
+
+ public int insertBatch(@Param("list") List list);
+
+ public List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsYieldMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsYieldMapper.java
new file mode 100644
index 0000000..6df37d7
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/CropsYieldMapper.java
@@ -0,0 +1,13 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.CropsYield;
+import org.springframework.data.repository.query.Param;
+
+import java.util.Date;
+import java.util.List;
+
+public interface CropsYieldMapper {
+ public List selectByYear(Integer year);
+
+ public int insertBatch(@Param("list") List list);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/EnvironmentalMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/EnvironmentalMapper.java
new file mode 100644
index 0000000..a9c5a56
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/EnvironmentalMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.EnvironmentalData;
+
+import java.util.List;
+
+public interface EnvironmentalMapper {
+ List selectByNumber(Integer number);
+
+ int insert(EnvironmentalData environmentalData);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/GreenhouseMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/GreenhouseMapper.java
new file mode 100644
index 0000000..4dd85b5
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/GreenhouseMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.GreenhouseInformation;
+
+import java.util.List;
+
+public interface GreenhouseMapper {
+ List selectByName(String name);
+
+ int insert(GreenhouseInformation greenhouseInformation);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/IntelligentControlMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/IntelligentControlMapper.java
new file mode 100644
index 0000000..8d31c5d
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/IntelligentControlMapper.java
@@ -0,0 +1,13 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.IntelligentControl;
+
+import java.util.List;
+
+public interface IntelligentControlMapper {
+ int insert(IntelligentControl intelligentControl);
+
+ List selectAll();
+
+ int edit(IntelligentControl intelligentControl);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/MachineParameterMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/MachineParameterMapper.java
new file mode 100644
index 0000000..9cecc5f
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/MachineParameterMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.MachineParameter;
+
+import java.util.List;
+
+public interface MachineParameterMapper {
+ List selectByName(String name);
+
+ int insert(MachineParameter machineParameter);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/OperationRecordsMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/OperationRecordsMapper.java
new file mode 100644
index 0000000..78269e3
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/OperationRecordsMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.OperationRecords;
+
+import java.util.List;
+
+public interface OperationRecordsMapper {
+ List selectAll();
+
+ int insert(OperationRecords operationRecords);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/ServiceTypeMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/ServiceTypeMapper.java
new file mode 100644
index 0000000..47a5dbb
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/ServiceTypeMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.ServiceType;
+
+import java.util.List;
+
+public interface ServiceTypeMapper {
+
+ List selectByType(String type);
+
+ int insert(ServiceType serviceType);
+
+ List selectAll();
+
+ int deleteByIds(Long[] ids);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/WarningMapper.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/WarningMapper.java
new file mode 100644
index 0000000..31a0a94
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/mapper/WarningMapper.java
@@ -0,0 +1,12 @@
+package com.ruoyi.crops.mapper;
+
+import com.ruoyi.crops.domain.WarningInformation;
+
+import java.util.List;
+
+public interface WarningMapper {
+ List selectByNumber(Integer number);
+
+ int insert(WarningInformation warningInformation);
+
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsComprehensiveDataService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsComprehensiveDataService.java
new file mode 100644
index 0000000..c5de9cf
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsComprehensiveDataService.java
@@ -0,0 +1,61 @@
+package com.ruoyi.crops.service;
+
+import java.util.List;
+import com.ruoyi.crops.domain.CropsComprehensiveData;
+
+/**
+ * 作物综合数据Service接口
+ *
+ * @author my
+ * @date 2023-04-20
+ */
+public interface ICropsComprehensiveDataService
+{
+ /**
+ * 查询作物综合数据
+ *
+ * @param id 作物综合数据主键
+ * @return 作物综合数据
+ */
+ public CropsComprehensiveData selectCropsComprehensiveDataById(Long id);
+
+ /**
+ * 查询作物综合数据列表
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 作物综合数据集合
+ */
+ public List selectCropsComprehensiveDataList(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 新增作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ public int insertCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 修改作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ public int updateCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData);
+
+ /**
+ * 批量删除作物综合数据
+ *
+ * @param ids 需要删除的作物综合数据主键集合
+ * @return 结果
+ */
+ public int deleteCropsComprehensiveDataByIds(Long[] ids);
+
+ /**
+ * 删除作物综合数据信息
+ *
+ * @param id 作物综合数据主键
+ * @return 结果
+ */
+ public int deleteCropsComprehensiveDataById(Long id);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsDroughtService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsDroughtService.java
new file mode 100644
index 0000000..4b9b068
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsDroughtService.java
@@ -0,0 +1,14 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.CropsDrought;
+import com.ruoyi.crops.domain.CropsYield;
+
+import java.util.Date;
+import java.util.List;
+
+public interface ICropsDroughtService {
+
+ public int insertBatch(List cropsYieldList);
+
+ public List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsGrowthService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsGrowthService.java
new file mode 100644
index 0000000..78cf7a8
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsGrowthService.java
@@ -0,0 +1,18 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.CropsGrowth;
+
+import javax.xml.crypto.Data;
+import java.util.Date;
+import java.util.List;
+
+public interface ICropsGrowthService {
+ /**
+ * 批量新增
+ * @param cropGrowth
+ * @return
+ */
+ public int insertBatch(List cropGrowth);
+
+ public List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsStructureService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsStructureService.java
new file mode 100644
index 0000000..19c6d54
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsStructureService.java
@@ -0,0 +1,29 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.CropStructure;
+
+import java.util.Date;
+import java.util.List;
+
+public interface ICropsStructureService {
+ /**
+ * 新增作物种植结构
+ * @param cropStructure
+ * @return
+ */
+ public int insertCropsStructure(CropStructure cropStructure);
+
+ /**
+ * 批量新增作物种植结构
+ * @param cropStructureList
+ * @return
+ */
+ public int insertBatch(List cropStructureList);
+
+ /**
+ * 根据时间查询
+ * @param time
+ * @return
+ */
+ public List selectByTime(Date time);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsYieldService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsYieldService.java
new file mode 100644
index 0000000..fe5bc6a
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/ICropsYieldService.java
@@ -0,0 +1,12 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.CropsYield;
+
+import java.util.Date;
+import java.util.List;
+
+public interface ICropsYieldService {
+ public List selectByYear(Integer year);
+
+ public int insertBatch (List cropYieldList);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IEnvironmentalService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IEnvironmentalService.java
new file mode 100644
index 0000000..ed9a274
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IEnvironmentalService.java
@@ -0,0 +1,12 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.EnvironmentalData;
+
+import java.util.List;
+
+public interface IEnvironmentalService {
+ List selectByNumber(Integer number);
+
+
+ int insert(EnvironmentalData environmentalData);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IFoundationService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IFoundationService.java
new file mode 100644
index 0000000..beec506
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IFoundationService.java
@@ -0,0 +1,5 @@
+package com.ruoyi.crops.service;
+
+public interface IFoundationService {
+ String getFoundation(String id);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IGreenhouseService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IGreenhouseService.java
new file mode 100644
index 0000000..e44ea8b
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IGreenhouseService.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.GreenhouseInformation;
+
+import java.util.List;
+
+public interface IGreenhouseService {
+ List selectByName(String name);
+
+ int insert(GreenhouseInformation greenhouseInformation);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IIntelligentControlService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IIntelligentControlService.java
new file mode 100644
index 0000000..be10a88
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IIntelligentControlService.java
@@ -0,0 +1,13 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.IntelligentControl;
+
+import java.util.List;
+
+public interface IIntelligentControlService {
+ int insert(IntelligentControl intelligentControl);
+
+ List selectAll();
+
+ int edit(IntelligentControl intelligentControl);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IMachineParameterService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IMachineParameterService.java
new file mode 100644
index 0000000..e441db3
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IMachineParameterService.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.MachineParameter;
+
+import java.util.List;
+
+public interface IMachineParameterService {
+ List selectByName(String name);
+
+ int insert(MachineParameter machineParameter);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IOperationRecordsService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IOperationRecordsService.java
new file mode 100644
index 0000000..6d12a7b
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IOperationRecordsService.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.OperationRecords;
+
+import java.util.List;
+
+public interface IOperationRecordsService {
+ List selectAll();
+
+ int insert(OperationRecords operationRecords);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IServiceTypeService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IServiceTypeService.java
new file mode 100644
index 0000000..e0bf360
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IServiceTypeService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.ServiceType;
+
+import java.util.List;
+
+public interface IServiceTypeService {
+
+ List selectByType(String type);
+
+ int insert(ServiceType serviceType);
+
+ List selectAll();
+
+ int deleteByIds(Long[] ids);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IUserInfoService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IUserInfoService.java
new file mode 100644
index 0000000..def790d
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IUserInfoService.java
@@ -0,0 +1,8 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.User;
+
+public interface IUserInfoService {
+
+ String login(User user);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IWarningService.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IWarningService.java
new file mode 100644
index 0000000..16fbc52
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/IWarningService.java
@@ -0,0 +1,11 @@
+package com.ruoyi.crops.service;
+
+import com.ruoyi.crops.domain.WarningInformation;
+
+import java.util.List;
+
+public interface IWarningService {
+ List selectByNumber(Integer number);
+
+ int insert(WarningInformation warningInformation);
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsComprehensiveDataServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsComprehensiveDataServiceImpl.java
new file mode 100644
index 0000000..b98081b
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsComprehensiveDataServiceImpl.java
@@ -0,0 +1,93 @@
+package com.ruoyi.crops.service.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.crops.mapper.CropsComprehensiveDataMapper;
+import com.ruoyi.crops.domain.CropsComprehensiveData;
+import com.ruoyi.crops.service.ICropsComprehensiveDataService;
+
+/**
+ * 作物综合数据Service业务层处理
+ *
+ * @author my
+ * @date 2023-04-20
+ */
+@Service
+public class CropsComprehensiveDataServiceImpl implements ICropsComprehensiveDataService
+{
+ @Autowired
+ private CropsComprehensiveDataMapper cropsComprehensiveDataMapper;
+
+ /**
+ * 查询作物综合数据
+ *
+ * @param id 作物综合数据主键
+ * @return 作物综合数据
+ */
+ @Override
+ public CropsComprehensiveData selectCropsComprehensiveDataById(Long id)
+ {
+ return cropsComprehensiveDataMapper.selectCropsComprehensiveDataById(id);
+ }
+
+ /**
+ * 查询作物综合数据列表
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 作物综合数据
+ */
+ @Override
+ public List selectCropsComprehensiveDataList(CropsComprehensiveData cropsComprehensiveData)
+ {
+ return cropsComprehensiveDataMapper.selectCropsComprehensiveDataList(cropsComprehensiveData);
+ }
+
+ /**
+ * 新增作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ @Override
+ public int insertCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData)
+ {
+ return cropsComprehensiveDataMapper.insertCropsComprehensiveData(cropsComprehensiveData);
+ }
+
+ /**
+ * 修改作物综合数据
+ *
+ * @param cropsComprehensiveData 作物综合数据
+ * @return 结果
+ */
+ @Override
+ public int updateCropsComprehensiveData(CropsComprehensiveData cropsComprehensiveData)
+ {
+ return cropsComprehensiveDataMapper.updateCropsComprehensiveData(cropsComprehensiveData);
+ }
+
+ /**
+ * 批量删除作物综合数据
+ *
+ * @param ids 需要删除的作物综合数据主键
+ * @return 结果
+ */
+ @Override
+ public int deleteCropsComprehensiveDataByIds(Long[] ids)
+ {
+ return cropsComprehensiveDataMapper.deleteCropsComprehensiveDataByIds(ids);
+ }
+
+ /**
+ * 删除作物综合数据信息
+ *
+ * @param id 作物综合数据主键
+ * @return 结果
+ */
+ @Override
+ public int deleteCropsComprehensiveDataById(Long id)
+ {
+ return cropsComprehensiveDataMapper.deleteCropsComprehensiveDataById(id);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsDroughtServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsDroughtServiceImpl.java
new file mode 100644
index 0000000..ae76c81
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsDroughtServiceImpl.java
@@ -0,0 +1,26 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.CropsDrought;
+import com.ruoyi.crops.domain.CropsYield;
+import com.ruoyi.crops.mapper.CropsDroughtMapper;
+import com.ruoyi.crops.service.ICropsDroughtService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class CropsDroughtServiceImpl implements ICropsDroughtService {
+ @Autowired
+ private CropsDroughtMapper cropsDroughtMapper;
+ @Override
+ public int insertBatch(List cropsYieldList) {
+ return cropsDroughtMapper.insertBatch(cropsYieldList);
+ }
+
+ @Override
+ public List selectByTime(Date time) {
+ return cropsDroughtMapper.selectByTime(time);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsGrowthServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsGrowthServiceImpl.java
new file mode 100644
index 0000000..d0427a8
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsGrowthServiceImpl.java
@@ -0,0 +1,25 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.CropsGrowth;
+import com.ruoyi.crops.mapper.CropsGrowthMapper;
+import com.ruoyi.crops.service.ICropsGrowthService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class CropsGrowthServiceImpl implements ICropsGrowthService {
+ @Autowired
+ private CropsGrowthMapper cropsGrowthMapper;
+ @Override
+ public int insertBatch(List cropGrowth) {
+ return cropsGrowthMapper.insertBatch(cropGrowth);
+ }
+
+ @Override
+ public List selectByTime(Date time) {
+ return cropsGrowthMapper.selectByTime(time);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsStructureServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsStructureServiceImpl.java
new file mode 100644
index 0000000..5175b46
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsStructureServiceImpl.java
@@ -0,0 +1,41 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.CropStructure;
+import com.ruoyi.crops.mapper.CropsStructureMapper;
+import com.ruoyi.crops.service.ICropsStructureService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class CropsStructureServiceImpl implements ICropsStructureService {
+ @Autowired
+ private CropsStructureMapper cropsStructureMapper;
+
+ /**
+ * 新增作物种植结构
+ * @param cropStructure
+ * @return
+ */
+ @Override
+ public int insertCropsStructure(CropStructure cropStructure) {
+ return cropsStructureMapper.insertCropsStructure(cropStructure);
+ }
+
+ /**
+ * 批量新增
+ * @param cropStructureList
+ * @return
+ */
+ @Override
+ public int insertBatch(List cropStructureList) {
+ return cropsStructureMapper.insertBatch(cropStructureList);
+ }
+
+ @Override
+ public List selectByTime(Date time) {
+ return cropsStructureMapper.selectByTime(time);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsYieldServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsYieldServiceImpl.java
new file mode 100644
index 0000000..ae3b351
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/CropsYieldServiceImpl.java
@@ -0,0 +1,25 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.CropsYield;
+import com.ruoyi.crops.mapper.CropsYieldMapper;
+import com.ruoyi.crops.service.ICropsYieldService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class CropsYieldServiceImpl implements ICropsYieldService {
+ @Autowired
+ private CropsYieldMapper cropsYieldMapper;
+ @Override
+ public List selectByYear(Integer year) {
+ return cropsYieldMapper.selectByYear(year);
+ }
+
+ @Override
+ public int insertBatch(List cropYieldList) {
+ return cropsYieldMapper.insertBatch(cropYieldList);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/EnvironmentalServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/EnvironmentalServiceImpl.java
new file mode 100644
index 0000000..f0b70f7
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/EnvironmentalServiceImpl.java
@@ -0,0 +1,24 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.EnvironmentalData;
+import com.ruoyi.crops.mapper.EnvironmentalMapper;
+import com.ruoyi.crops.service.IEnvironmentalService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class EnvironmentalServiceImpl implements IEnvironmentalService {
+ @Autowired
+ private EnvironmentalMapper environmentalMapper;
+ @Override
+ public List selectByNumber(Integer number) {
+ return environmentalMapper.selectByNumber(number);
+ }
+
+ @Override
+ public int insert(EnvironmentalData environmentalData) {
+ return environmentalMapper.insert(environmentalData);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/FoundationServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/FoundationServiceImpl.java
new file mode 100644
index 0000000..2b25ca2
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/FoundationServiceImpl.java
@@ -0,0 +1,44 @@
+package com.ruoyi.crops.service.impl;
+
+import cn.hutool.http.HttpUtil;
+import com.google.gson.Gson;
+import com.ruoyi.crops.domain.GsonParseFoundationBean;
+import com.ruoyi.crops.service.IFoundationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+
+@Service
+public class FoundationServiceImpl implements IFoundationService {
+ @Autowired
+ private RedisTemplate redisTemplate;
+ @Autowired
+ private Gson gson;
+
+ @Value("${url.foundation}")
+ private String url;
+ @Override
+ public String getFoundation(String id) {
+
+ Map map = new HashMap<>();//存放参数
+ map.put("id", id);
+ HashMap headers = new HashMap<>();//存放请求头,可以存放多个请求头
+ String token = (String) redisTemplate.opsForValue().get(id);
+ headers.put("token", token);
+ String result = HttpUtil.createPost(url).addHeaders(headers).form(map).execute().body();
+
+ GsonParseFoundationBean model = gson.fromJson(result, GsonParseFoundationBean.class);
+ ArrayList foundations = model.data;
+ for (GsonParseFoundationBean.Foundation Foundation : foundations) {
+ Integer foundationId = Foundation.foundationId;
+ String foundationName = Foundation.foundationName;
+// insert(foundationId,foundationName);
+ }
+ return token;
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/GreenhouseServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/GreenhouseServiceImpl.java
new file mode 100644
index 0000000..f953494
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/GreenhouseServiceImpl.java
@@ -0,0 +1,24 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.GreenhouseInformation;
+import com.ruoyi.crops.mapper.GreenhouseMapper;
+import com.ruoyi.crops.service.IGreenhouseService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class GreenhouseServiceImpl implements IGreenhouseService {
+ @Autowired
+ private GreenhouseMapper greenhouseMapper;
+ @Override
+ public List selectByName(String name) {
+ return greenhouseMapper.selectByName(name);
+ }
+
+ @Override
+ public int insert(GreenhouseInformation greenhouseInformation) {
+ return greenhouseMapper.insert(greenhouseInformation);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/IntelligentControlServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/IntelligentControlServiceImpl.java
new file mode 100644
index 0000000..538ccc6
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/IntelligentControlServiceImpl.java
@@ -0,0 +1,29 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.IntelligentControl;
+import com.ruoyi.crops.mapper.IntelligentControlMapper;
+import com.ruoyi.crops.service.IIntelligentControlService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class IntelligentControlServiceImpl implements IIntelligentControlService {
+ @Autowired
+ private IntelligentControlMapper intelligentControlMapper;
+ @Override
+ public int insert(IntelligentControl intelligentControl) {
+ return intelligentControlMapper.insert(intelligentControl);
+ }
+
+ @Override
+ public List selectAll() {
+ return intelligentControlMapper.selectAll();
+ }
+
+ @Override
+ public int edit(IntelligentControl intelligentControl) {
+ return intelligentControlMapper.edit(intelligentControl);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/MachineParameterServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/MachineParameterServiceImpl.java
new file mode 100644
index 0000000..ec1d67a
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/MachineParameterServiceImpl.java
@@ -0,0 +1,24 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.MachineParameter;
+import com.ruoyi.crops.mapper.MachineParameterMapper;
+import com.ruoyi.crops.service.IMachineParameterService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class MachineParameterServiceImpl implements IMachineParameterService {
+ @Autowired
+ private MachineParameterMapper machineParameterMapper;
+ @Override
+ public List selectByName(String name) {
+ return machineParameterMapper.selectByName(name);
+ }
+
+ @Override
+ public int insert(MachineParameter machineParameter) {
+ return machineParameterMapper.insert(machineParameter);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/OperationRecordsServiceImppl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/OperationRecordsServiceImppl.java
new file mode 100644
index 0000000..69481c7
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/OperationRecordsServiceImppl.java
@@ -0,0 +1,24 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.OperationRecords;
+import com.ruoyi.crops.mapper.OperationRecordsMapper;
+import com.ruoyi.crops.service.IOperationRecordsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class OperationRecordsServiceImppl implements IOperationRecordsService {
+ @Autowired
+ private OperationRecordsMapper operationRecordsMapper;
+ @Override
+ public List selectAll() {
+ return operationRecordsMapper.selectAll();
+ }
+
+ @Override
+ public int insert(OperationRecords operationRecords) {
+ return operationRecordsMapper.insert(operationRecords);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/ServiceTypeServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/ServiceTypeServiceImpl.java
new file mode 100644
index 0000000..3790745
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/ServiceTypeServiceImpl.java
@@ -0,0 +1,35 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.ServiceType;
+import com.ruoyi.crops.mapper.ServiceTypeMapper;
+import com.ruoyi.crops.service.IServiceTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class ServiceTypeServiceImpl implements IServiceTypeService {
+ @Autowired
+ private ServiceTypeMapper serviceTypeMapper;
+ @Override
+ public List selectByType(String type) {
+ return serviceTypeMapper.selectByType(type);
+
+ }
+
+ @Override
+ public int insert(ServiceType serviceType) {
+ return serviceTypeMapper.insert(serviceType);
+ }
+
+ @Override
+ public List selectAll() {
+ return serviceTypeMapper.selectAll();
+ }
+
+ @Override
+ public int deleteByIds(Long[] ids) {
+ return serviceTypeMapper.deleteByIds(ids);
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/UserInfoServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/UserInfoServiceImpl.java
new file mode 100644
index 0000000..64a48e6
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/UserInfoServiceImpl.java
@@ -0,0 +1,35 @@
+package com.ruoyi.crops.service.impl;
+
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson2.JSONObject;
+import com.ruoyi.crops.domain.User;
+import com.ruoyi.crops.domain.UserInfo;
+import com.ruoyi.crops.service.IUserInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
+
+import java.time.Duration;
+import java.util.HashMap;
+
+@Service
+public class UserInfoServiceImpl implements IUserInfoService {
+ @Autowired
+ private RedisTemplate redisTemplate;
+ @Value("${url.userInfo}")
+ private String url;
+
+ @Override
+ public String login(User user) {
+ HashMap paramMap = new HashMap<>();
+ paramMap.put("username", user.getUsername());
+ paramMap.put("password", user.getPassword());
+ String result = HttpUtil.post(url, paramMap);
+
+ UserInfo userInfo = JSONObject.parseObject(result, UserInfo.class);
+ redisTemplate.opsForValue().set(userInfo.getId(), userInfo.getToken(), Duration.ofMillis(userInfo.getExpire()) );
+
+ return userInfo.toString();
+ }
+}
diff --git a/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/WarningServiceImpl.java b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/WarningServiceImpl.java
new file mode 100644
index 0000000..cfe6e4a
--- /dev/null
+++ b/ruoyi-crops/src/main/java/com/ruoyi/crops/service/impl/WarningServiceImpl.java
@@ -0,0 +1,23 @@
+package com.ruoyi.crops.service.impl;
+
+import com.ruoyi.crops.domain.WarningInformation;
+import com.ruoyi.crops.mapper.WarningMapper;
+import com.ruoyi.crops.service.IWarningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+@Service
+public class WarningServiceImpl implements IWarningService {
+ @Autowired
+ private WarningMapper warningMapper;
+ @Override
+ public List selectByNumber(Integer number) {
+ return warningMapper.selectByNumber(number);
+ }
+
+ @Override
+ public int insert(WarningInformation warningInformation) {
+ return warningMapper.insert(warningInformation);
+ }
+}
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/CropsComprehensiveDataMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/CropsComprehensiveDataMapper.xml
new file mode 100644
index 0000000..f3e7669
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/CropsComprehensiveDataMapper.xml
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, cultivated_area, foodstuff_production, vegetable_planting_area, vegetable_production, type, agricultural_planting_area, agriculture_production, agriculture_output_vaule, total_population, cover_area, example_greenhouse, rusticate, cultivated_ally, greenhouse, output_value, vector_boundary, village_vector_boundary,img, created_by, created_time from crops_comprehensive_data
+
+
+
+
+
+
+
+ insert into ruoyi.crops_comprehensive_data
+
+ cultivated_area,
+ foodstuff_production,
+ vegetable_planting_area,
+ vegetable_production,
+ type,
+ agricultural_planting_area,
+ agriculture_production,
+ agriculture_output_vaule,
+ total_population,
+ cover_area,
+ example_greenhouse,
+ rusticate,
+ cultivated_ally,
+ greenhouse,
+ output_value,
+ vector_boundary,
+ village_vector_boundary,
+ img,
+ created_by,
+ created_time,
+
+
+ #{cultivatedArea},
+ #{foodstuffProduction},
+ #{vegetablePlantingArea},
+ #{vegetableProduction},
+ #{type},
+ #{agriculturalPlantingArea},
+ #{agricultureProduction},
+ #{agricultureOutputVaule},
+ #{totalPopulation},
+ #{coverArea},
+ #{exampleGreenhouse},
+ #{rusticate},
+ #{cultivatedAlly},
+ #{greenhouse},
+ #{outputValue},
+ #{vectorBoundary},
+ #{villageVectorBoundary},
+ #{img},
+ #{createdBy},
+ #{createdTime},
+
+
+
+
+ update crops_comprehensive_data
+
+ cultivated_area = #{cultivatedArea},
+ foodstuff_production = #{foodstuffProduction},
+ vegetable_planting_area = #{vegetablePlantingArea},
+ vegetable_production = #{vegetableProduction},
+ type = #{type},
+ agricultural_planting_area = #{agriculturalPlantingArea},
+ agriculture_production = #{agricultureProduction},
+ agriculture_output_vaule = #{agricultureOutputVaule},
+ total_population = #{totalPopulation},
+ cover_area = #{coverArea},
+ example_greenhouse = #{exampleGreenhouse},
+ rusticate = #{rusticate},
+ cultivated_ally = #{cultivatedAlly},
+ greenhouse = #{greenhouse},
+ output_value = #{outputValue},
+ vector_boundary = #{vectorBoundary},
+ village_vector_boundary = #{villageVectorBoundary},
+ village_vector_boundary = #{img},
+ created_by = #{createdBy},
+ created_time = #{createdTime},
+
+ where id = #{id}
+
+
+
+ delete from crops_comprehensive_data where id = #{id}
+
+
+
+ delete from crops_comprehensive_data where id in
+
+ #{id}
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/CropsDroughtMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/CropsDroughtMapper.xml
new file mode 100644
index 0000000..21345c7
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/CropsDroughtMapper.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.crop_drought(zone,imageDate,severeArea,modArea,mildArea,suitArea,humidArea)
+ values
+
+ (#{entity.zone},#{entity.imageDate},#{entity.severeArea},#{entity.modArea},#{entity.mildArea},#{entity.suitArea},#{entity.humidArea})
+
+
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/CropsGrowthMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/CropsGrowthMapper.xml
new file mode 100644
index 0000000..e1c659e
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/CropsGrowthMapper.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id,zone,imageDate,poorArea,lowArea,mediumArea,goodArea,excellentArea from ruoyi.crop_growth
+
+
+
+ insert into ruoyi.crop_growth(zone,imageDate,poorArea,lowArea,mediumArea,goodArea,excellentArea)
+ values
+
+ (#{entity.zone},#{entity.imageDate},#{entity.poorArea},#{entity.lowArea},#{entity.mediumArea},#{entity.goodArea},#{entity.excellentArea})
+
+
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/CropsStructureMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/CropsStructureMapper.xml
new file mode 100644
index 0000000..9e73a1a
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/CropsStructureMapper.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, zone, imageDate, wheatArea, cornArea, peanutArea, soybeanArea,otherArea, toalArea from ruoyi.crop_structure
+
+
+
+ insert into ruoyi.crop_structure
+
+ zone,
+ imageDate,
+ wheatArea,
+ cornArea,
+ peanutArea,
+ soybeanArea,
+ otherArea,
+ toalArea,
+
+
+ #{zone},
+ #{imageDate},
+ #{wheatArea},
+ #{cornArea},
+ #{peanutArea},
+ #{soybeanArea},
+ #{otherArea},
+ #{toalArea},
+
+
+
+
+
+ insert into ruoyi.crop_structure(zone,imageDate,wheatArea,cornArea,peanutArea,soybeanArea,otherArea,toalArea)
+ values
+
+ (#{entity.zone},#{entity.imageDate},#{entity.wheatArea},#{entity.cornArea},#{entity.peanutArea},#{entity.soybeanArea},#{entity.otherArea},#{entity.toalArea})
+
+
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/CropsYieldMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/CropsYieldMapper.xml
new file mode 100644
index 0000000..42aa431
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/CropsYieldMapper.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ select id,zone,imageDate,cropType,yield from ruoyi.crop_yield
+
+
+
+
+ insert into ruoyi.crop_yield(zone,imageDate,cropType,yield)
+ values
+
+ (#{entity.zone},#{entity.imageDate},#{entity.cropType},#{entity.yield})
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/EnvironmentalMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/EnvironmentalMapper.xml
new file mode 100644
index 0000000..1fc6947
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/EnvironmentalMapper.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.environmental_data(greenhouse_number, soil_temperature, soil_humidity, nitrogen_content, phosphorus_content, potassium_content, air_temperature, air_humidity)
+ VALUE(#{greenhouseNumber},#{soilTemperature},#{soilHumidity},#{nitrogenContent},#{phosphorusContent},#{potassiumContent},#{airTemperature},#{airHumidity})
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/GreenhouseMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/GreenhouseMapper.xml
new file mode 100644
index 0000000..9e885d0
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/GreenhouseMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.greenhouse_information(zone, management_model, introduce)
+ VALUE (#{zone},#{managementModel},#{introduce})
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/IntelligentControlMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/IntelligentControlMapper.xml
new file mode 100644
index 0000000..5254479
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/IntelligentControlMapper.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.intelligent_control (greenhouse_name, valve_number, valve_status, disjunctor , schedule)
+ VALUE(#{greenhouseName},#{valveNumber},#{valveStatus},#{disjunctor},#{schedule})
+
+
+
+
+
+
+ update Intelligent_Control
+
+
+ greenhouse_name = #{greenhouseName},
+
+
+ valve_number = #{valveNumber},
+
+
+ valve_status = #{valveStatus},
+
+
+ disjunctor = #{disjunctor},
+
+
+ schedule = #{schedule},
+
+
+ where id = #{id}
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/MachineParameterMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/MachineParameterMapper.xml
new file mode 100644
index 0000000..0e1efb4
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/MachineParameterMapper.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+ select id, greenhouse_name, pressure, flow, conductivity
+ from ruoyi.machine_parameter
+
+
+
+
+ insert into ruoyi.machine_parameter (greenhouse_name, pressure, flow, conductivity)
+ VALUE (#{greenhouseName},#{pressure},#{flow},#{conductivity})
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/OperationRecordsMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/OperationRecordsMapper.xml
new file mode 100644
index 0000000..442af5f
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/OperationRecordsMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.operation_records(update_time, operation_content, update_by)
+ VALUE(#{updateTime},#{operationContent},#{updateBy})
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/ServiceTypeMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/ServiceTypeMapper.xml
new file mode 100644
index 0000000..0764fd1
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/ServiceTypeMapper.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ select id,service_type,time,service_name,style from ruoyi.service_type
+
+
+
+
+ insert into ruoyi.service_type(service_type, time, service_name, style)
+ value (#{serviceType},#{time},#{serviceName},#{style})
+
+
+
+
+
+ delete from ruoyi.service_type where id in
+
+ #{id}
+
+
+
+
diff --git a/ruoyi-crops/src/main/resources/mapper/crops/WarningMapper.xml b/ruoyi-crops/src/main/resources/mapper/crops/WarningMapper.xml
new file mode 100644
index 0000000..86a89ba
--- /dev/null
+++ b/ruoyi-crops/src/main/resources/mapper/crops/WarningMapper.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into ruoyi.warning_information(greenhouse_number, monitoring_indicators, monitoring_values, abnormal_cause, warning_time)
+ VALUE(#{greenhouseNumber},#{monitoringIndicators},#{monitoringValues},#{abnormalCause},#{warningTime})
+
+
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
index bdb7199..7e5fa0c 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -22,7 +22,7 @@ import com.ruoyi.framework.security.handle.LogoutSuccessHandlerImpl;
/**
* spring security配置
- *
+ *
* @author ruoyi
*/
@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
@@ -33,7 +33,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
*/
@Autowired
private UserDetailsService userDetailsService;
-
+
/**
* 认证失败处理类
*/
@@ -51,7 +51,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
*/
@Autowired
private JwtAuthenticationTokenFilter authenticationTokenFilter;
-
+
/**
* 跨域过滤器
*/
@@ -115,10 +115,11 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
.antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
- // 除上面外的所有请求全部需要鉴权认证
- .anyRequest().authenticated()
- .and()
- .headers().frameOptions().disable();
+ .antMatchers("/admins/**").permitAll();
+ // 除上面外的所有请求全部需要鉴权认证
+// .anyRequest().authenticated()
+// .and()
+// .headers().frameOptions().disable();
// 添加Logout filter
httpSecurity.logout().logoutUrl("/logout").logoutSuccessHandler(logoutSuccessHandler);
// 添加JWT filter
diff --git a/ruoyi-generator/src/main/resources/generator.yml b/ruoyi-generator/src/main/resources/generator.yml
index 4544c8c..fc27026 100644
--- a/ruoyi-generator/src/main/resources/generator.yml
+++ b/ruoyi-generator/src/main/resources/generator.yml
@@ -1,10 +1,10 @@
# 代码生成
-gen:
+gen:
# 作者
- author: ruoyi
+ author: my
# 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
- packageName: com.ruoyi.system
+ packageName: com.ruoyi.crops
# 自动去除表前缀,默认是false
autoRemovePre: false
# 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
- tablePrefix: sys_
\ No newline at end of file
+ tablePrefix: crops_
diff --git a/ruoyi-pill/pom.xml b/ruoyi-pill/pom.xml
new file mode 100644
index 0000000..4d5b59b
--- /dev/null
+++ b/ruoyi-pill/pom.xml
@@ -0,0 +1,25 @@
+
+
+
+ ruoyi
+ com.ruoyi
+ 3.8.5
+
+ 4.0.0
+
+ ruoyi-pill
+
+
+ 17
+ 17
+
+
+
+ com.ruoyi
+ ruoyi-common
+
+
+
+
\ No newline at end of file
diff --git a/ruoyi-pill/src/main/java/com/ruoyi/pill/domain/PillFactory.java b/ruoyi-pill/src/main/java/com/ruoyi/pill/domain/PillFactory.java
new file mode 100644
index 0000000..b4102eb
--- /dev/null
+++ b/ruoyi-pill/src/main/java/com/ruoyi/pill/domain/PillFactory.java
@@ -0,0 +1,126 @@
+package com.ruoyi.pill.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 生产厂家信息对象 pill_factory
+ *
+ * @author my
+ * @date 2023-04-18
+ */
+public class PillFactory extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 厂家ID */
+ private Long factoryId;
+
+ /** 厂家名称 */
+ @Excel(name = "厂家名称")
+ private String factoryName;
+
+ /** 厂家编码 */
+ @Excel(name = "厂家编码")
+ private String factoryCode;
+
+ /** 联系人 */
+ @Excel(name = "联系人")
+ private String contact;
+
+ /** 电话 */
+ @Excel(name = "电话")
+ private String phone;
+
+ /** 关键字 */
+ @Excel(name = "关键字")
+ private String keyword;
+
+ /** 状态 */
+ @Excel(name = "状态")
+ private String status;
+
+ public void setFactoryId(Long factoryId)
+ {
+ this.factoryId = factoryId;
+ }
+
+ public Long getFactoryId()
+ {
+ return factoryId;
+ }
+ public void setFactoryName(String factoryName)
+ {
+ this.factoryName = factoryName;
+ }
+
+ public String getFactoryName()
+ {
+ return factoryName;
+ }
+ public void setFactoryCode(String factoryCode)
+ {
+ this.factoryCode = factoryCode;
+ }
+
+ public String getFactoryCode()
+ {
+ return factoryCode;
+ }
+ public void setContact(String contact)
+ {
+ this.contact = contact;
+ }
+
+ public String getContact()
+ {
+ return contact;
+ }
+ public void setPhone(String phone)
+ {
+ this.phone = phone;
+ }
+
+ public String getPhone()
+ {
+ return phone;
+ }
+ public void setKeyword(String keyword)
+ {
+ this.keyword = keyword;
+ }
+
+ public String getKeyword()
+ {
+ return keyword;
+ }
+ public void setStatus(String status)
+ {
+ this.status = status;
+ }
+
+ public String getStatus()
+ {
+ return status;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("factoryId", getFactoryId())
+ .append("factoryName", getFactoryName())
+ .append("factoryCode", getFactoryCode())
+ .append("contact", getContact())
+ .append("phone", getPhone())
+ .append("keyword", getKeyword())
+ .append("status", getStatus())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/ruoyi-pill/src/main/java/com/ruoyi/pill/mapper/PillFactoryMapper.java b/ruoyi-pill/src/main/java/com/ruoyi/pill/mapper/PillFactoryMapper.java
new file mode 100644
index 0000000..214f5eb
--- /dev/null
+++ b/ruoyi-pill/src/main/java/com/ruoyi/pill/mapper/PillFactoryMapper.java
@@ -0,0 +1,61 @@
+package com.ruoyi.pill.mapper;
+
+import java.util.List;
+import com.ruoyi.pill.domain.PillFactory;
+
+/**
+ * 生产厂家信息Mapper接口
+ *
+ * @author my
+ * @date 2023-04-18
+ */
+public interface PillFactoryMapper
+{
+ /**
+ * 查询生产厂家信息
+ *
+ * @param factoryId 生产厂家信息主键
+ * @return 生产厂家信息
+ */
+ public PillFactory selectPillFactoryByFactoryId(Long factoryId);
+
+ /**
+ * 查询生产厂家信息列表
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 生产厂家信息集合
+ */
+ public List selectPillFactoryList(PillFactory pillFactory);
+
+ /**
+ * 新增生产厂家信息
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 结果
+ */
+ public int insertPillFactory(PillFactory pillFactory);
+
+ /**
+ * 修改生产厂家信息
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 结果
+ */
+ public int updatePillFactory(PillFactory pillFactory);
+
+ /**
+ * 删除生产厂家信息
+ *
+ * @param factoryId 生产厂家信息主键
+ * @return 结果
+ */
+ public int deletePillFactoryByFactoryId(Long factoryId);
+
+ /**
+ * 批量删除生产厂家信息
+ *
+ * @param factoryIds 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deletePillFactoryByFactoryIds(Long[] factoryIds);
+}
diff --git a/ruoyi-pill/src/main/java/com/ruoyi/pill/service/impl/PillFactoryServiceImpl.java b/ruoyi-pill/src/main/java/com/ruoyi/pill/service/impl/PillFactoryServiceImpl.java
new file mode 100644
index 0000000..7a9f6c3
--- /dev/null
+++ b/ruoyi-pill/src/main/java/com/ruoyi/pill/service/impl/PillFactoryServiceImpl.java
@@ -0,0 +1,96 @@
+package com.ruoyi.pill.service.impl;
+
+import java.util.List;
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.pill.mapper.PillFactoryMapper;
+import com.ruoyi.pill.domain.PillFactory;
+import com.ruoyi.pill.service.IPillFactoryService;
+
+/**
+ * 生产厂家信息Service业务层处理
+ *
+ * @author my
+ * @date 2023-04-18
+ */
+@Service
+public class PillFactoryServiceImpl implements IPillFactoryService
+{
+ @Autowired
+ private PillFactoryMapper pillFactoryMapper;
+
+ /**
+ * 查询生产厂家信息
+ *
+ * @param factoryId 生产厂家信息主键
+ * @return 生产厂家信息
+ */
+ @Override
+ public PillFactory selectPillFactoryByFactoryId(Long factoryId)
+ {
+ return pillFactoryMapper.selectPillFactoryByFactoryId(factoryId);
+ }
+
+ /**
+ * 查询生产厂家信息列表
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 生产厂家信息
+ */
+ @Override
+ public List selectPillFactoryList(PillFactory pillFactory)
+ {
+ return pillFactoryMapper.selectPillFactoryList(pillFactory);
+ }
+
+ /**
+ * 新增生产厂家信息
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 结果
+ */
+ @Override
+ public int insertPillFactory(PillFactory pillFactory)
+ {
+ pillFactory.setCreateTime(DateUtils.getNowDate());
+ return pillFactoryMapper.insertPillFactory(pillFactory);
+ }
+
+ /**
+ * 修改生产厂家信息
+ *
+ * @param pillFactory 生产厂家信息
+ * @return 结果
+ */
+ @Override
+ public int updatePillFactory(PillFactory pillFactory)
+ {
+ pillFactory.setUpdateTime(DateUtils.getNowDate());
+ return pillFactoryMapper.updatePillFactory(pillFactory);
+ }
+
+ /**
+ * 批量删除生产厂家信息
+ *
+ * @param factoryIds 需要删除的生产厂家信息主键
+ * @return 结果
+ */
+ @Override
+ public int deletePillFactoryByFactoryIds(Long[] factoryIds)
+ {
+ return pillFactoryMapper.deletePillFactoryByFactoryIds(factoryIds);
+ }
+
+ /**
+ * 删除生产厂家信息信息
+ *
+ * @param factoryId 生产厂家信息主键
+ * @return 结果
+ */
+ @Override
+ public int deletePillFactoryByFactoryId(Long factoryId)
+ {
+ return pillFactoryMapper.deletePillFactoryByFactoryId(factoryId);
+ }
+}
diff --git a/ruoyi-pill/src/main/resources/mapper/pill/PillFactoryMapper.xml b/ruoyi-pill/src/main/resources/mapper/pill/PillFactoryMapper.xml
new file mode 100644
index 0000000..27e387d
--- /dev/null
+++ b/ruoyi-pill/src/main/resources/mapper/pill/PillFactoryMapper.xml
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select factory_id, factory_name, factory_code, contact, phone, keyword, status, create_by, create_time, update_by, update_time, remark from pill_factory
+
+
+
+
+
+
+
+ insert into pill_factory
+
+ factory_name,
+ factory_code,
+ contact,
+ phone,
+ keyword,
+ status,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ remark,
+
+
+ #{factoryName},
+ #{factoryCode},
+ #{contact},
+ #{phone},
+ #{keyword},
+ #{status},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+ #{remark},
+
+
+
+
+ update pill_factory
+
+ factory_name = #{factoryName},
+ factory_code = #{factoryCode},
+ contact = #{contact},
+ phone = #{phone},
+ keyword = #{keyword},
+ status = #{status},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ remark = #{remark},
+
+ where factory_id = #{factoryId}
+
+
+
+ delete from pill_factory where factory_id = #{factoryId}
+
+
+
+ delete from pill_factory where factory_id in
+
+ #{factoryId}
+
+
+
\ No newline at end of file
diff --git a/ruoyi-ui/src/api/crops/data.js b/ruoyi-ui/src/api/crops/data.js
new file mode 100644
index 0000000..696c768
--- /dev/null
+++ b/ruoyi-ui/src/api/crops/data.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询作物综合数据列表
+export function listData(query) {
+ return request({
+ url: '/crops/data/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询作物综合数据详细
+export function getData(id) {
+ return request({
+ url: '/crops/data/' + id,
+ method: 'get'
+ })
+}
+
+// 新增作物综合数据
+export function addData(data) {
+ return request({
+ url: '/crops/data',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改作物综合数据
+export function updateData(data) {
+ return request({
+ url: '/crops/data',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除作物综合数据
+export function delData(id) {
+ return request({
+ url: '/crops/data/' + id,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/pill/factory.js b/ruoyi-ui/src/api/pill/factory.js
new file mode 100644
index 0000000..143085e
--- /dev/null
+++ b/ruoyi-ui/src/api/pill/factory.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询生产厂家信息列表
+export function listFactory(query) {
+ return request({
+ url: '/pill/factory/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询生产厂家信息详细
+export function getFactory(factoryId) {
+ return request({
+ url: '/pill/factory/' + factoryId,
+ method: 'get'
+ })
+}
+
+// 新增生产厂家信息
+export function addFactory(data) {
+ return request({
+ url: '/pill/factory',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改生产厂家信息
+export function updateFactory(data) {
+ return request({
+ url: '/pill/factory',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除生产厂家信息
+export function delFactory(factoryId) {
+ return request({
+ url: '/pill/factory/' + factoryId,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/views/crops/data/index.vue b/ruoyi-ui/src/views/crops/data/index.vue
new file mode 100644
index 0000000..45d3d48
--- /dev/null
+++ b/ruoyi-ui/src/views/crops/data/index.vue
@@ -0,0 +1,506 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createdTime, '{y}-{m}-{d}') }}
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ruoyi-ui/src/views/pill/factory/index.vue b/ruoyi-ui/src/views/pill/factory/index.vue
new file mode 100644
index 0000000..8d554ae
--- /dev/null
+++ b/ruoyi-ui/src/views/pill/factory/index.vue
@@ -0,0 +1,347 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{dict.label}}
+
+
+
+
+
+
+
+
+
+
+
+