Browse Source

第一次提交

林仔 11 tháng trước cách đây
mục cha
commit
ddb21306dd

+ 61 - 0
src/main/java/com/zksy/property/domain/ARoom.java

@@ -0,0 +1,61 @@
+package com.zksy.property.domain;
+
+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 java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 房间表
+ * @TableName a_room
+ */
+@TableName(value ="a_room")
+@Data
+public class ARoom implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
+
+    /**
+     * 户型主键
+     */
+    private String houseTypeId;
+
+    /**
+     * 房间号
+     */
+    private String roomNumber;
+
+    /**
+     * 房间图片url
+     */
+    private String roomPictureUrl;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 创建人
+     */
+    private String createBy;
+
+    /**
+     * 修改时间
+     */
+    private Date updateTime;
+
+    /**
+     * 修改人
+     */
+    private String updateBy;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 18 - 0
src/main/java/com/zksy/property/mapper/ARoomMapper.java

@@ -0,0 +1,18 @@
+package com.zksy.property.mapper;
+
+import com.zksy.property.domain.ARoom;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author Administrator
+* @description 针对表【a_room(房间表)】的数据库操作Mapper
+* @createDate 2025-06-26 09:44:49
+* @Entity com.zksy.property.domain.ARoom
+*/
+public interface ARoomMapper extends BaseMapper<ARoom> {
+
+}
+
+
+
+

+ 20 - 0
src/main/java/com/zksy/property/service/ARoomService.java

@@ -0,0 +1,20 @@
+package com.zksy.property.service;
+
+import com.zksy.property.domain.ARoom;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+/**
+* @author Administrator
+* @description 针对表【a_room(房间表)】的数据库操作Service
+* @createDate 2025-06-26 09:44:49
+*/
+public interface ARoomService extends IService<ARoom> {
+
+    List<ARoom> getByHouseTypeId(String houseTypeId);
+    boolean saveARoom(ARoom aRoom, MultipartFile multipartFile);
+    boolean updateARoom(ARoom aRoom, MultipartFile multipartFile);
+    boolean removeBatchARoom(List<String> ids);
+}

+ 82 - 0
src/main/java/com/zksy/property/service/impl/ARoomServiceImpl.java

@@ -0,0 +1,82 @@
+package com.zksy.property.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zksy.property.domain.ARoom;
+import com.zksy.property.mapper.AHouseTypeMapper;
+import com.zksy.property.service.ARoomService;
+import com.zksy.property.mapper.ARoomMapper;
+import com.zksy.service.MinioFileStorageService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+/**
+* @author Administrator
+* @description 针对表【a_room(房间表)】的数据库操作Service实现
+* @createDate 2025-06-26 09:44:49
+*/
+@Service
+public class ARoomServiceImpl extends ServiceImpl<ARoomMapper, ARoom>
+    implements ARoomService{
+    @Autowired
+    private ARoomMapper mapper;
+    @Autowired
+    private MinioFileStorageService minioFileStorageService;
+
+    @Override
+    public List<ARoom> getByHouseTypeId(String houseTypeId) {
+        QueryWrapper<ARoom> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("house_type_id",houseTypeId);
+        List<ARoom> list = mapper.selectList(queryWrapper);
+        return list;
+    }
+
+    @Override
+    public boolean saveARoom(ARoom aRoom, MultipartFile multipartFile) {
+        try {
+            if (multipartFile != null) {
+                String path = minioFileStorageService.uploadFile(multipartFile, "room");
+                aRoom.setRoomPictureUrl(path);
+            }
+            return save(aRoom);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return false;
+    }
+
+    @Override
+    public boolean updateARoom(ARoom aRoom, MultipartFile multipartFile) {
+        try {
+            if (multipartFile != null) {
+                // 删除minio文件
+                minioFileStorageService.deleteFile(aRoom.getRoomPictureUrl());
+                String path = minioFileStorageService.uploadFile(multipartFile, "room");
+                aRoom.setRoomPictureUrl(path);
+            }
+            return updateById(aRoom);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        return false;
+    }
+
+    @Override
+    public boolean removeBatchARoom(List<String> ids) {
+        for (String id : ids) {
+            ARoom aRoom = getById(id);
+            if (aRoom != null) {
+                minioFileStorageService.deleteFile(aRoom.getRoomPictureUrl());
+            }
+            removeById(id);
+        }
+        return false;
+    }
+}
+
+
+
+

+ 23 - 0
src/main/resources/mapper/property/ARoomMapper.xml

@@ -0,0 +1,23 @@
+<?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="com.zksy.property.mapper.ARoomMapper">
+
+    <resultMap id="BaseResultMap" type="com.zksy.property.domain.ARoom">
+            <id property="id" column="id" jdbcType="VARCHAR"/>
+            <result property="houseTypeId" column="house_type_id" jdbcType="VARCHAR"/>
+            <result property="roomNumber" column="room_number" jdbcType="VARCHAR"/>
+            <result property="roomPictureUrl" column="room_picture_url" jdbcType="VARCHAR"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="createBy" column="create_by" jdbcType="VARCHAR"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+            <result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,house_type_id,room_number,
+        room_picture_url,create_time,create_by,
+        update_time,update_by
+    </sql>
+</mapper>