From 399d6f4179d6c013c585e07fe9b5cc35e6897944 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Tue, 10 May 2022 11:41:09 +0800
Subject: [PATCH] 新增农场基本接口
---
src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml | 10 +
src/main/java/org/springblade/modules/farm/service/FarmService.java | 26 +++
src/main/java/org/springblade/modules/farm/controller/FarmController.java | 121 +++++++++++++++
src/main/java/org/springblade/modules/develop/mapper/FarmMapper.xml | 0
src/test/java/org/springblade/test/BladeTest.java | 92 +++++-----
src/main/java/org/springblade/modules/desk/mapper/FarmMapper.xml | 0
src/main/java/org/springblade/modules/farm/service/impl/FarmServiceImpl.java | 45 +++++
src/main/java/org/springblade/modules/farm/entity/Farm.java | 80 ++++++++++
src/main/resources/application-test.yml | 6
src/main/java/org/springblade/modules/farm/mapper/FarmMapper.java | 42 +++++
src/main/java/org/springblade/modules/farm/vo/FarmVO.java | 29 +++
src/main/resources/application.yml | 2
12 files changed, 403 insertions(+), 50 deletions(-)
diff --git a/src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml b/src/main/java/org/springblade/modules/desk/mapper/FarmMapper.xml
similarity index 100%
rename from src/main/java/org/springblade/modules/desk/mapper/NoticeMapper.xml
rename to src/main/java/org/springblade/modules/desk/mapper/FarmMapper.xml
diff --git a/src/main/java/org/springblade/modules/develop/mapper/DatasourceMapper.xml b/src/main/java/org/springblade/modules/develop/mapper/FarmMapper.xml
similarity index 100%
rename from src/main/java/org/springblade/modules/develop/mapper/DatasourceMapper.xml
rename to src/main/java/org/springblade/modules/develop/mapper/FarmMapper.xml
diff --git a/src/main/java/org/springblade/modules/farm/controller/FarmController.java b/src/main/java/org/springblade/modules/farm/controller/FarmController.java
new file mode 100644
index 0000000..09f2abb
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/controller/FarmController.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.farm.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.farm.entity.Farm;
+import org.springblade.modules.farm.service.FarmService;
+import org.springblade.modules.farm.vo.FarmVO;
+import org.springframework.web.bind.annotation.*;
+import javax.validation.Valid;
+
+/**
+ * 农场控制器
+ * @since 2022-05-10
+ * @author zhongrj
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/farm")
+public class FarmController extends BladeController {
+
+ private final FarmService farmService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "详情", notes = "传入farm")
+ public R<Farm> detail(Farm farm) {
+ Farm detail = farmService.getOne(Condition.getQueryWrapper(farm));
+ return R.data(detail);
+ }
+
+ /**
+ * 分页
+ */
+ @GetMapping("/list")
+ @ApiOperationSupport(order = 2)
+ @ApiOperation(value = "分页", notes = "传入farm")
+ public R<IPage<Farm>> list(Farm farm, Query query) {
+ IPage<Farm> pages = farmService.page(Condition.getPage(query), Condition.getQueryWrapper(farm));
+ return R.data(pages);
+ }
+
+ /**
+ * 自定义分页
+ */
+ @GetMapping("/page")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入farm")
+ public R<IPage<FarmVO>> page(FarmVO farm, Query query) {
+ IPage<FarmVO> pages = farmService.selectFarmPage(Condition.getPage(query), farm);
+ return R.data(pages);
+ }
+
+ /**
+ * 新增
+ */
+ @PostMapping("/save")
+ @ApiOperationSupport(order = 4)
+ @ApiOperation(value = "新增", notes = "传入farm")
+ public R save(@Valid @RequestBody Farm farm) {
+ return R.status(farmService.save(farm));
+ }
+
+ /**
+ * 修改
+ */
+ @PostMapping("/update")
+ @ApiOperationSupport(order = 5)
+ @ApiOperation(value = "修改", notes = "传入farm")
+ public R update(@Valid @RequestBody Farm farm) {
+ return R.status(farmService.updateById(farm));
+ }
+
+ /**
+ * 新增或修改
+ */
+ @PostMapping("/submit")
+ @ApiOperationSupport(order = 6)
+ @ApiOperation(value = "新增或修改", notes = "传入farm")
+ public R submit(@Valid @RequestBody Farm farm) {
+ return R.status(farmService.saveOrUpdate(farm));
+ }
+
+
+ /**
+ * 删除
+ */
+ @PostMapping("/remove")
+ @ApiOperationSupport(order = 7)
+ @ApiOperation(value = "逻辑删除", notes = "传入ids")
+ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ return R.status(farmService.removeByIds(Func.toLongList(ids)));
+ }
+
+}
diff --git a/src/main/java/org/springblade/modules/farm/entity/Farm.java b/src/main/java/org/springblade/modules/farm/entity/Farm.java
new file mode 100644
index 0000000..dbb0e48
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/entity/Farm.java
@@ -0,0 +1,80 @@
+package org.springblade.modules.farm.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 实体类
+ * @since 2022-05-10
+ * @author zhongrj
+ */
+@Data
+@TableName("sys_farm")
+public class Farm implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 主键id
+ */
+ @TableId(value = "id",type = IdType.AUTO)
+ private Integer id;
+
+ /**
+ * 农场名称
+ */
+ private Integer farmName;
+
+ /**
+ * 农场地址
+ */
+ private String farmAddress;
+
+ /**
+ * 土地流转面积
+ */
+ private String farmArea;
+
+
+ /**
+ * 口号
+ */
+ private String slogan;
+
+
+ /**
+ * 介绍
+ */
+ private String introduce;
+
+
+ /**
+ * 农场环境照片(多张)
+ */
+ private String picture;
+
+ /**
+ * 农场位置(面)
+ */
+ private String position;
+
+ /**
+ * 租户id
+ */
+ private String tenantId;
+
+ /**
+ * 创建时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
+
+
+}
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.java b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.java
new file mode 100644
index 0000000..2b9e687
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.farm.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.farm.entity.Farm;
+import org.springblade.modules.farm.vo.FarmVO;
+
+import java.util.List;
+
+/**
+ * 农场Mapper 接口
+ * @since 2022-05-10
+ * @author zhongrj
+ */
+public interface FarmMapper extends BaseMapper<Farm> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param farm
+ * @return
+ */
+ List<FarmVO> selectFarmPage(IPage page, FarmVO farm);
+
+}
diff --git a/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
new file mode 100644
index 0000000..82687f3
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.farm.mapper.FarmMapper">
+
+ <!--自定义查询农场分页数据-->
+ <select id="selectFarmPage" resultType="org.springblade.modules.farm.vo.FarmVO">
+ select * from sys_farm where 1=1
+ </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/farm/service/FarmService.java b/src/main/java/org/springblade/modules/farm/service/FarmService.java
new file mode 100644
index 0000000..9cd4522
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/service/FarmService.java
@@ -0,0 +1,26 @@
+
+package org.springblade.modules.farm.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.farm.entity.Farm;
+import org.springblade.modules.farm.vo.FarmVO;
+
+/**
+ * 农场服务类
+ * @since 2022-05-10
+ * @author zhongrj
+ */
+public interface FarmService extends IService<Farm> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param farm
+ * @return
+ */
+ IPage<FarmVO> selectFarmPage(IPage<FarmVO> page, FarmVO farm);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/farm/service/impl/FarmServiceImpl.java b/src/main/java/org/springblade/modules/farm/service/impl/FarmServiceImpl.java
new file mode 100644
index 0000000..d952efb
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/service/impl/FarmServiceImpl.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.farm.service.impl;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.farm.entity.Farm;
+import org.springblade.modules.farm.mapper.FarmMapper;
+import org.springblade.modules.farm.service.FarmService;
+import org.springblade.modules.farm.vo.FarmVO;
+import org.springframework.stereotype.Service;
+
+/**
+ * 农场服务实现类
+ * @since 2022-05-10
+ * @author zhongrj
+ */
+@Service
+public class FarmServiceImpl extends ServiceImpl<FarmMapper, Farm> implements FarmService {
+
+ /**
+ * 自定义分页
+ * @param page
+ * @param farm
+ * @return
+ */
+ @Override
+ public IPage<FarmVO> selectFarmPage(IPage<FarmVO> page, FarmVO farm) {
+ return page.setRecords(baseMapper.selectFarmPage(page, farm));
+ }
+
+}
diff --git a/src/main/java/org/springblade/modules/farm/vo/FarmVO.java b/src/main/java/org/springblade/modules/farm/vo/FarmVO.java
new file mode 100644
index 0000000..b1802c9
--- /dev/null
+++ b/src/main/java/org/springblade/modules/farm/vo/FarmVO.java
@@ -0,0 +1,29 @@
+package org.springblade.modules.farm.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.resource.entity.Oss;
+
+/**
+ * OssVO
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "OssVO对象", description = "对象存储表")
+public class FarmVO extends Oss {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 分类名
+ */
+ private String categoryName;
+
+ /**
+ * 是否启用
+ */
+ private String statusName;
+
+}
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index fab7885..3f350ea 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -14,9 +14,9 @@
# nodes: 127.0.0.1:7001,127.0.0.1:7002,127.0.0.1:7003
# commandTimeout: 5000
datasource:
- url: jdbc:mysql://localhost:3306/bladex_boot?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
+ url: jdbc:mysql://36.134.81.48:3306/zhny?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
username: root
- password: root
+ password: jfpt123
#第三方登陆
social:
@@ -32,7 +32,7 @@
##将docker脚本部署的redis服务映射为宿主机ip
##生产环境推荐使用阿里云高可用redis服务并设置密码
address: redis://127.0.0.1:6379
- password: 123456
+ password:
#本地文件上传
file:
remote-mode: true
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index c8d14aa..bedf30f 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,6 +1,6 @@
#服务器配置
server:
- port: 80
+ port: 89
undertow:
threads:
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
diff --git a/src/test/java/org/springblade/test/BladeTest.java b/src/test/java/org/springblade/test/BladeTest.java
index 1fd4b37..c533d5f 100644
--- a/src/test/java/org/springblade/test/BladeTest.java
+++ b/src/test/java/org/springblade/test/BladeTest.java
@@ -1,46 +1,46 @@
-package org.springblade.test;
-
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springblade.core.test.BladeBootTest;
-import org.springblade.core.test.BladeSpringRunner;
-import org.springblade.core.tool.utils.StringUtil;
-import org.springblade.flow.engine.entity.FlowModel;
-import org.springblade.flow.engine.service.FlowEngineService;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.util.List;
-
-/**
- * Blade单元测试
- *
- * @author Chill
- */
-@RunWith(BladeSpringRunner.class)
-@BladeBootTest(appName = "blade-runner", enableLoader = true)
-public class BladeTest {
-
- @Autowired
- private FlowEngineService service;
-
- @Test
- public void contextLoads() {
- System.out.println("=====数据迁移启动=====");
-
- // 获取 ACT_DE_MODEL 表需要转换的数据
- List<FlowModel> list = service.list();
- // 循环转换
- list.forEach(flowModel -> {
- if (StringUtil.isBlank(flowModel.getModelEditorXml())) {
- service.update(Wrappers.<FlowModel>lambdaUpdate()
- .set(FlowModel::getModelEditorXml, new String(service.getModelEditorXML(flowModel)))
- .ge(FlowModel::getId, flowModel.getId())
- );
- }
- });
-
- System.out.println("=====数据迁移完毕=====");
- }
-
-}
+//package org.springblade.test;
+//
+//import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+//import org.junit.Test;
+//import org.junit.runner.RunWith;
+//import org.springblade.core.test.BladeBootTest;
+//import org.springblade.core.test.BladeSpringRunner;
+//import org.springblade.core.tool.utils.StringUtil;
+//import org.springblade.flow.engine.entity.FlowModel;
+//import org.springblade.flow.engine.service.FlowEngineService;
+//import org.springframework.beans.factory.annotation.Autowired;
+//
+//import java.util.List;
+//
+///**
+// * Blade单元测试
+// *
+// * @author Chill
+// */
+//@RunWith(BladeSpringRunner.class)
+//@BladeBootTest(appName = "blade-runner", enableLoader = true)
+//public class BladeTest {
+//
+// @Autowired
+// private FlowEngineService service;
+//
+// @Test
+// public void contextLoads() {
+// System.out.println("=====数据迁移启动=====");
+//
+// // 获取 ACT_DE_MODEL 表需要转换的数据
+// List<FlowModel> list = service.list();
+// // 循环转换
+// list.forEach(flowModel -> {
+// if (StringUtil.isBlank(flowModel.getModelEditorXml())) {
+// service.update(Wrappers.<FlowModel>lambdaUpdate()
+// .set(FlowModel::getModelEditorXml, new String(service.getModelEditorXML(flowModel)))
+// .ge(FlowModel::getId, flowModel.getId())
+// );
+// }
+// });
+//
+// System.out.println("=====数据迁移完毕=====");
+// }
+//
+//}
--
Gitblit v1.9.3