Przeglądaj źródła

增加房源接口

houweiyu 4 lat temu
rodzic
commit
f3febf4ddf

+ 25 - 0
kankan-daikan-core/src/main/java/kankan/daikan/base/service/impl/TmHouseServiceImpl.java

@@ -1,12 +1,15 @@
 package kankan.daikan.base.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import fdage.back.sdk.base.uuid.SnowFlakeUUidUtils;
 import kankan.daikan.base.dao.TmHouseDao;
 import kankan.daikan.base.entity.TmHouse;
 import kankan.daikan.base.enums.UuidPreEnum;
 import kankan.daikan.base.service.ITmHouseService;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
 
@@ -32,5 +35,27 @@ public class TmHouseServiceImpl extends ServiceImpl<TmHouseDao, TmHouse> impleme
         return getBaseMapper().insert(tmHouse);
     }
 
+    public TmHouse getWithId(String id) {
+        if (StringUtils.isBlank(id)) {
+            return null;
+        }
+        LambdaQueryWrapper<TmHouse> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(TmHouse::getIsDelete, 0);
+        lambdaQueryWrapper.eq(TmHouse::getId, id);
+        lambdaQueryWrapper.last("limit 1");
+        return getBaseMapper().selectOne(lambdaQueryWrapper);
+    }
+
+
+    @Transactional(rollbackFor = Exception.class)
+    public int updateHouse(TmHouse tmHouse){
+        if(null == tmHouse || StringUtils.isBlank(tmHouse.getId())){
+            return -1;
+        }
+        tmHouse.setUpdateTime(LocalDateTime.now());
+        return getBaseMapper().updateById(tmHouse);
+    }
+
+
 
 }

+ 15 - 0
kankan-daikan-core/src/main/java/kankan/daikan/base/service/impl/TmProjectServiceImpl.java

@@ -46,6 +46,21 @@ public class TmProjectServiceImpl extends ServiceImpl<TmProjectDao, TmProject> i
         return getBaseMapper().insert(tmProject);
     }
 
+    public TmProject addNewWithRsp(TmProject tmProject) {
+        if (null == tmProject) {
+            return null;
+        }
+        tmProject.setId(SnowFlakeUUidUtils.generaUUid(null, null, UuidPreEnum.HOUSE_ID_PRE.getPre()));
+        tmProject.setIsDelete(0);
+        tmProject.setCreateTime(LocalDateTime.now());
+        tmProject.setUpdateTime(LocalDateTime.now());
+        int add = getBaseMapper().insert(tmProject);
+        if(add != 1){
+            return null;
+        }
+        return tmProject;
+    }
+
     public TmProject getWithId(String id) {
         if (StringUtils.isBlank(id)) {
             return null;

+ 76 - 2
kankan-daikan-core/src/main/java/kankan/daikan/core/controller/HouseController.java

@@ -1,9 +1,19 @@
 package kankan.daikan.core.controller;
 
+import fdage.back.sdk.base.entity.Result;
+import fdage.back.sdk.base.enums.ResultCodeEnum;
+import fdage.back.sdk.base.exception.CommonBaseException;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import kankan.daikan.base.entity.TmHouse;
+import kankan.daikan.base.entity.TmProject;
+import kankan.daikan.base.service.impl.TmHouseServiceImpl;
 import lombok.extern.log4j.Log4j2;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
 
 @Api(tags = "看房房源相关接口")
 @RestController
@@ -11,4 +21,68 @@ import org.springframework.web.bind.annotation.RestController;
 @Log4j2
 public class HouseController  extends BaseController{
 
+    @Autowired
+    private TmHouseServiceImpl houseService;
+
+    @ApiOperation("新增房源")
+    @PostMapping(value = "/addNew")
+    public Result<Object> addNewProject(@RequestBody TmHouse tmHouse){
+
+        if(!StringUtils.isNoneBlank(tmHouse.getTitle() , tmHouse.getSceneNum())){
+            return Result.failure("标题或者场景码不能为空");
+        }
+        if(null == tmHouse.getTemplateType()){
+            return Result.failure("模板类型不能为空");
+        }
+        int add = houseService.addNew(tmHouse);
+        if(add != 1){
+            return Result.failure("新增失败");
+        }
+        return Result.success("新增成功");
+    }
+
+    @ApiOperation("修改房源")
+    @PostMapping(value = "/update")
+    public Result<Object> updateHouse(@RequestBody TmHouse tmHouse){
+
+        if(null == tmHouse || StringUtils.isBlank(tmHouse.getId())){
+            return Result.failure("缺少房源id等参数");
+        }
+        TmHouse dbHouse = houseService.getWithId(tmHouse.getId());
+        if(null == dbHouse){
+            return Result.failure("房源不存在");
+        }
+        if(!StringUtils.equals(dbHouse.getTitle() , tmHouse.getTitle())){
+            //TODO:修改了房源标题,需要更改项目标题
+
+        }
+        if(!StringUtils.equals(dbHouse.getSceneNum() , tmHouse.getSceneNum())){
+            //TODO:修改了场景码,需要更改项目场景码
+
+        }
+        int update = houseService.updateHouse(tmHouse);
+        if(update != 1){
+            throw new CommonBaseException(ResultCodeEnum.D101 , "更新失败");
+        }
+        return Result.success();
+    }
+
+    @GetMapping("/getDetail")
+    @ApiOperation(value = "获取房源详情")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "houseId", value = "房源ID", paramType = "query", required = true, dataType = "String"),
+    })
+    public Result<Object> getDetail(@RequestParam("houseId") String houseId) {
+
+        if (StringUtils.isBlank(houseId)) {
+            return Result.failure("房源ID不能为空");
+        }
+        TmHouse house = houseService.getWithId(houseId);
+        if(null == house){
+            return Result.failure("房源不存在");
+        }
+        return Result.success(house);
+    }
+
+
 }

+ 3 - 2
kankan-daikan-core/src/main/java/kankan/daikan/core/controller/ProjectController.java

@@ -36,8 +36,8 @@ public class ProjectController  extends BaseController{
         if(null == tmProject.getTemplateType()){
             return Result.failure("模板类型不能为空");
         }
-        int add = projectService.addNew(tmProject);
-        if(add != 1){
+        tmProject = projectService.addNewWithRsp(tmProject);
+        if(null == tmProject){
             return Result.failure("新增失败");
         }
         return Result.success("新增成功");
@@ -52,6 +52,7 @@ public class ProjectController  extends BaseController{
             return Result.failure("缺失id列表");
         }
         projectService.batchDeleteById(commonDto.getIds());
+        //TODO:这里需要删除相应的领域数据
         return Result.success();
     }