stjdydayou 4 vuotta sitten
vanhempi
commit
f9465ef4bc

+ 9 - 0
src/main/java/com/zhiqiyun/open/core/mapper/HomeStayInfoMapper.java

@@ -0,0 +1,9 @@
+package com.zhiqiyun.open.core.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhiqiyun.open.core.models.bz.HomeStayInfo;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface HomeStayInfoMapper extends BaseMapper<HomeStayInfo> {
+}

+ 28 - 0
src/main/java/com/zhiqiyun/open/core/models/bz/HomeStayInfo.java

@@ -0,0 +1,28 @@
+package com.zhiqiyun.open.core.models.bz;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.zhiqiyun.open.core.typeHandler.FastjsonTypeHandler;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+@TableName(value = "bz_home_stay_info", autoResultMap = true)
+public class HomeStayInfo {
+	@TableId(type = IdType.INPUT)
+	private Long id;
+	private String name;
+	@TableField(typeHandler = FastjsonTypeHandler.class)
+	private List<String> litpics;
+	private String brief;
+	private String address;
+	private String contacts;
+	private String contactNumber;
+	private String businessHours;
+	private BigDecimal lng;
+	private BigDecimal lat;
+}

+ 7 - 0
src/main/java/com/zhiqiyun/open/core/service/HomeStayInfoService.java

@@ -0,0 +1,7 @@
+package com.zhiqiyun.open.core.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhiqiyun.open.core.models.bz.HomeStayInfo;
+
+public interface HomeStayInfoService extends IService<HomeStayInfo> {
+}

+ 11 - 0
src/main/java/com/zhiqiyun/open/core/service/impl/HomeStayInfoServiceImpl.java

@@ -0,0 +1,11 @@
+package com.zhiqiyun.open.core.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhiqiyun.open.core.mapper.HomeStayInfoMapper;
+import com.zhiqiyun.open.core.models.bz.HomeStayInfo;
+import com.zhiqiyun.open.core.service.HomeStayInfoService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class HomeStayInfoServiceImpl extends ServiceImpl<HomeStayInfoMapper, HomeStayInfo> implements HomeStayInfoService {
+}

+ 95 - 0
src/main/java/com/zhiqiyun/open/mvc/controller/HomeStayInfoController.java

@@ -0,0 +1,95 @@
+package com.zhiqiyun.open.mvc.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zhiqiyun.open.annotation.Permission;
+import com.zhiqiyun.open.core.models.bz.HomeStayInfo;
+import com.zhiqiyun.open.core.service.HomeStayInfoService;
+import com.zhiqiyun.open.core.service.SequenceService;
+import com.zhiqiyun.open.mvc.Result;
+import com.zhiqiyun.open.mvc.params.QueryhomeStayInfoParams;
+import com.zhiqiyun.open.mvc.params.SaveHomeStayInfoParams;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+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 javax.validation.Valid;
+import java.util.List;
+
+@RestController
+@RequestMapping("/bz/base/home/stay")
+public class HomeStayInfoController {
+
+    @Autowired
+    private HomeStayInfoService homeStayInfoService;
+
+    @Autowired
+    private SequenceService sequenceService;
+
+    @Permission(value = "bz.base.home.stay.find", tags = "查询场馆")
+    @PostMapping("/findPage")
+    public Result findPage(@RequestBody QueryhomeStayInfoParams params) {
+
+        QueryWrapper<HomeStayInfo> queryWrapper = new QueryWrapper<>();
+
+        if (StringUtils.isNotBlank(params.getContactNumber())) {
+            queryWrapper.like("contact_number", params.getContactNumber());
+        }
+        if (StringUtils.isNotBlank(params.getKeyword())) {
+            queryWrapper.and(true, wrapper -> {
+                wrapper.like("name", params.getKeyword());
+                wrapper.or();
+                wrapper.like("brief", params.getKeyword());
+                wrapper.or();
+                wrapper.like("address", params.getKeyword());
+                wrapper.or();
+                wrapper.like("contacts", params.getKeyword());
+            });
+        }
+
+        Page<HomeStayInfo> page = params.getPage();
+        page.addOrder(OrderItem.desc("id"));
+
+        Page<HomeStayInfo> resultData = this.homeStayInfoService.page(page, queryWrapper);
+
+        return Result.instance(Result.Code.SUCCESS).setData(resultData);
+    }
+
+    @Permission(value = "bz.base.home.stay.add", tags = "保存场馆")
+    @PostMapping("/save")
+    public Result save(@Valid @RequestBody SaveHomeStayInfoParams params) {
+
+        HomeStayInfo homeStayInfo = new HomeStayInfo();
+        BeanUtils.copyProperties(params, homeStayInfo);
+        homeStayInfo.setId(this.sequenceService.nextId());
+        this.homeStayInfoService.save(homeStayInfo);
+
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+
+    @Permission(value = "bz.base.home.stay.edit", tags = "编辑场馆")
+    @PostMapping("/updateById")
+    public Result updateById(Long id, @Valid @RequestBody SaveHomeStayInfoParams params) {
+
+        HomeStayInfo homeStayInfo = new HomeStayInfo();
+        BeanUtils.copyProperties(params, homeStayInfo);
+        homeStayInfo.setId(id);
+
+        this.homeStayInfoService.updateById(homeStayInfo);
+
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+
+
+    @Permission(value = "bz.base.home.stay.delete", tags = "删除场馆")
+    @PostMapping("/deleteByIds")
+    public Result deleteByIds(@RequestBody List<Long> ids) {
+        this.homeStayInfoService.removeByIds(ids);
+        return Result.instance(Result.Code.MESSAGE_SUCCESS);
+    }
+}

+ 11 - 0
src/main/java/com/zhiqiyun/open/mvc/params/QueryhomeStayInfoParams.java

@@ -0,0 +1,11 @@
+package com.zhiqiyun.open.mvc.params;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class QueryhomeStayInfoParams extends QueryPageParams {
+	private String keyword;
+	private String contactNumber;
+}

+ 20 - 0
src/main/java/com/zhiqiyun/open/mvc/params/SaveHomeStayInfoParams.java

@@ -0,0 +1,20 @@
+package com.zhiqiyun.open.mvc.params;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+public class SaveHomeStayInfoParams {
+    private String name;
+    private List<String> litpics;
+    private String describe;
+    private String brief;
+    private String address;
+    private String contacts;
+    private String contactNumber;
+    private String businessHours;
+    private BigDecimal lng;
+    private BigDecimal lat;
+}

+ 0 - 47
src/main/resources/db/migration/V1.0.6__bz_hotel_info.sql

@@ -21,50 +21,3 @@ VALUES (1700, 0, 'bz.base.hotel', '酒店基本信息管理'),
        (1702, 1700, 'bz.base.hotel.add', '添加'),
        (1703, 1700, 'bz.base.hotel.edit', '修改'),
        (1704, 1700, 'bz.base.hotel.delete', '删除');
-
-
-DROP TABLE IF EXISTS `bz_weather_info`;
-CREATE TABLE `bz_weather_info`
-(
-    `id`            BIGINT(30) NOT NULL COMMENT 'ID',
-    `province_name` VARCHAR(50)  NOT NULL COMMENT '省份名',
-    `city_name`     VARCHAR(100) NOT NULL COMMENT '城市名',
-    `adcode`        VARCHAR(50)  NOT NULL COMMENT '区域编码',
-    `weather`       VARCHAR(50)  NOT NULL COMMENT '天气现象(汉字描述)',
-    `temperature`   VARCHAR(50)  NOT NULL COMMENT '实时气温,单位:摄氏度',
-    `winddirection` VARCHAR(50)  NOT NULL COMMENT '风向描述',
-    `windpower`     VARCHAR(50)  NOT NULL COMMENT '风力级别,单位:级',
-    `humidity`      VARCHAR(50)  NOT NULL COMMENT '空气湿度',
-    `pm25`          INT(11) NOT NULL COMMENT '空气湿度',
-    `aqi`           INT(11) NOT NULL COMMENT 'AQI',
-    `air_quality`   VARCHAR(50)  NOT NULL COMMENT '空气质量',
-    `reporttime`    DATETIME     NOT NULL COMMENT '发布的时间',
-    PRIMARY KEY (`id`)
-) COMMENT='交通信息表' ENGINE=InnoDB;
-
-DROP TABLE IF EXISTS `bz_tourist_agency_info`;
-CREATE TABLE `bz_tourist_agency_info`
-(
-    `id`      BIGINT(30) NOT NULL COMMENT 'ID',
-    `name`    VARCHAR(50)  NOT NULL COMMENT '名称',
-    `address` VARCHAR(50)  NOT NULL COMMENT '地址',
-    `summary` VARCHAR(500) NOT NULL COMMENT '简介',
-    `lng`     FLOAT        NOT NULL COMMENT '经度(坐标)',
-    `lat`     FLOAT        NOT NULL COMMENT '纬度(坐标)',
-    PRIMARY KEY (`id`)
-) COMMENT='旅行社信息表' ENGINE=InnoDB;
-
-
-
-DROP TABLE IF EXISTS `bz_holiday_resort_info`;
-CREATE TABLE `bz_holiday_resort_info`
-(
-    `id`      BIGINT(30) NOT NULL COMMENT 'ID',
-    `name`    VARCHAR(50)  NOT NULL COMMENT '名称',
-    `address` VARCHAR(50)  NOT NULL COMMENT '地址',
-    `grade`   VARCHAR(50) NULL DEFAULT NULL COMMENT '等级',
-    `summary` VARCHAR(500) NOT NULL COMMENT '简介',
-    `lng`     FLOAT        NOT NULL COMMENT '经度(坐标)',
-    `lat`     FLOAT        NOT NULL COMMENT '纬度(坐标)',
-    PRIMARY KEY (`id`)
-) COMMENT='度假区信息表' ENGINE=InnoDB;

+ 70 - 0
src/main/resources/db/migration/V1.0.7__bz_home_stay_info.sql

@@ -0,0 +1,70 @@
+DROP TABLE IF EXISTS `bz_home_stay_info`;
+CREATE TABLE `bz_home_stay_info`
+(
+    `id`             BIGINT(20) NOT NULL COMMENT 'ID',
+    `name`           VARCHAR(50) NULL DEFAULT NULL COMMENT '名称',
+    `litpics`        VARCHAR(500) NULL DEFAULT NULL COMMENT '图片',
+    `brief`          VARCHAR(500) NULL DEFAULT NULL COMMENT '简介',
+    `address`        VARCHAR(100) NULL DEFAULT NULL COMMENT '地址',
+    `contacts`       VARCHAR(50) NULL DEFAULT NULL COMMENT '联系人',
+    `contact_number` VARCHAR(50) NULL DEFAULT NULL COMMENT '联系电话',
+    `business_hours` VARCHAR(200) NULL DEFAULT NULL COMMENT '开放时间',
+    `lng`            DECIMAL(20, 6) NOT NULL DEFAULT '0.000000' COMMENT '经度(坐标)',
+    `lat`            DECIMAL(20, 6) NOT NULL DEFAULT '0.000000' COMMENT '纬度(坐标)',
+    PRIMARY KEY (`id`)
+) COMMENT='民宿信息表' ENGINE=InnoDB;
+
+REPLACE
+INTO `authority_info` (`id`, `parent_id`, `name`, `remark`)
+VALUES (1800, 0, 'bz.base.home.stay', '民宿基本信息管理'),
+       (1801, 1800, 'bz.base.home.stay.find', '查询'),
+       (1802, 1800, 'bz.base.home.stay.add', '添加'),
+       (1803, 1800, 'bz.base.home.stay.edit', '修改'),
+       (1804, 1800, 'bz.base.home.stay.delete', '删除');
+
+
+DROP TABLE IF EXISTS `bz_weather_info`;
+CREATE TABLE `bz_weather_info`
+(
+    `id`            BIGINT(30) NOT NULL COMMENT 'ID',
+    `province_name` VARCHAR(50)  NOT NULL COMMENT '省份名',
+    `city_name`     VARCHAR(100) NOT NULL COMMENT '城市名',
+    `adcode`        VARCHAR(50)  NOT NULL COMMENT '区域编码',
+    `weather`       VARCHAR(50)  NOT NULL COMMENT '天气现象(汉字描述)',
+    `temperature`   VARCHAR(50)  NOT NULL COMMENT '实时气温,单位:摄氏度',
+    `winddirection` VARCHAR(50)  NOT NULL COMMENT '风向描述',
+    `windpower`     VARCHAR(50)  NOT NULL COMMENT '风力级别,单位:级',
+    `humidity`      VARCHAR(50)  NOT NULL COMMENT '空气湿度',
+    `pm25`          INT(11) NOT NULL COMMENT '空气湿度',
+    `aqi`           INT(11) NOT NULL COMMENT 'AQI',
+    `air_quality`   VARCHAR(50)  NOT NULL COMMENT '空气质量',
+    `reporttime`    DATETIME     NOT NULL COMMENT '发布的时间',
+    PRIMARY KEY (`id`)
+) COMMENT='交通信息表' ENGINE=InnoDB;
+
+DROP TABLE IF EXISTS `bz_tourist_agency_info`;
+CREATE TABLE `bz_tourist_agency_info`
+(
+    `id`      BIGINT(30) NOT NULL COMMENT 'ID',
+    `name`    VARCHAR(50)  NOT NULL COMMENT '名称',
+    `address` VARCHAR(50)  NOT NULL COMMENT '地址',
+    `summary` VARCHAR(500) NOT NULL COMMENT '简介',
+    `lng`     FLOAT        NOT NULL COMMENT '经度(坐标)',
+    `lat`     FLOAT        NOT NULL COMMENT '纬度(坐标)',
+    PRIMARY KEY (`id`)
+) COMMENT='旅行社信息表' ENGINE=InnoDB;
+
+
+
+DROP TABLE IF EXISTS `bz_holiday_resort_info`;
+CREATE TABLE `bz_holiday_resort_info`
+(
+    `id`      BIGINT(30) NOT NULL COMMENT 'ID',
+    `name`    VARCHAR(50)  NOT NULL COMMENT '名称',
+    `address` VARCHAR(50)  NOT NULL COMMENT '地址',
+    `grade`   VARCHAR(50) NULL DEFAULT NULL COMMENT '等级',
+    `summary` VARCHAR(500) NOT NULL COMMENT '简介',
+    `lng`     FLOAT        NOT NULL COMMENT '经度(坐标)',
+    `lat`     FLOAT        NOT NULL COMMENT '纬度(坐标)',
+    PRIMARY KEY (`id`)
+) COMMENT='度假区信息表' ENGINE=InnoDB;