Browse Source

增加操作日志接口

houweiyu 4 năm trước cách đây
mục cha
commit
d6c5503ba2

+ 1 - 1
src/main/java/fcb/project/manager/base/entity/TmOperation.java

@@ -66,7 +66,7 @@ public class TmOperation implements Serializable {
 
     @ApiModelProperty(value = "是否删除: 0->未删除; 1->已删除")
     @TableField("isDelete")
-    private Boolean isDelete;
+    private Integer isDelete;
 
 
 }

+ 1 - 0
src/main/java/fcb/project/manager/base/enums/UuidPreEnum.java

@@ -14,6 +14,7 @@ public enum UuidPreEnum {
     API_ROOM_ID_PRE("ROOMID01" , "VR看房的SOCKET房间号的UUID前缀"),
     API_HOUSE_ID_PRE("APIHOUSE" , "API房源信息的UUID前缀"),
     API_HOUSE_RECOMMEND_ID_PRE("RECHOUSE" , "API房源的推荐房源信息的UUID前缀"),
+    OPERATION_ID_PRE("OP00000001" , "操作日志的UUID前缀"),
     ;
     private String pre;
     private String desc;

+ 53 - 0
src/main/java/fcb/project/manager/base/service/impl/TmOperationServiceImpl.java

@@ -1,11 +1,19 @@
 package fcb.project.manager.base.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import fcb.project.manager.base.entity.TmOperation;
 import fcb.project.manager.base.dao.TmOperationDao;
+import fcb.project.manager.base.enums.UuidPreEnum;
 import fcb.project.manager.base.service.ITmOperationService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import fdage.back.sdk.base.uuid.SnowFlakeUUidUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
+
 /**
  * <p>
  * 操作记录表 服务实现类
@@ -17,4 +25,49 @@ import org.springframework.stereotype.Service;
 @Service
 public class TmOperationServiceImpl extends ServiceImpl<TmOperationDao, TmOperation> implements ITmOperationService {
 
+    public int insertNew(TmOperation tmOperation){
+
+        if(null == tmOperation){
+            return -1;
+        }
+        if(null == tmOperation.getId()){
+            tmOperation.setId(SnowFlakeUUidUtils.generaUUid(null ,null , UuidPreEnum.OPERATION_ID_PRE.getPre()));
+        }
+        if(null == tmOperation.getCreateTime()){
+            tmOperation.setCreateTime(LocalDateTime.now());
+        }
+        if(null == tmOperation.getUpdateTime()){
+            tmOperation.setUpdateTime(LocalDateTime.now());
+        }
+        tmOperation.setIsDelete(0);
+        return getBaseMapper().insert(tmOperation);
+    }
+
+    public IPage<TmOperation> getOperationList(Long pageNum , Long pageSize ,
+                                               String startTime , String endTime,
+                                               String operatorName, String companyName, String phone){
+        if(null == pageNum){
+            pageNum = 1L;
+        }
+        if(null == pageSize){
+            pageSize = 1L;
+        }
+        IPage<TmOperation> page = new Page<>(pageNum , pageSize);
+        LambdaQueryWrapper<TmOperation> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        if(StringUtils.isNoneBlank(startTime , endTime)){
+            //时间区间,TODO:
+
+        }
+        if(StringUtils.isNotBlank(operatorName)){
+            lambdaQueryWrapper.like(TmOperation::getOperatorName , operatorName);
+        }
+        if(StringUtils.isNotBlank(companyName)){
+            lambdaQueryWrapper.like(TmOperation::getOperatorCompanyName , companyName);
+        }
+        if(StringUtils.isNotBlank(phone)){
+            lambdaQueryWrapper.like(TmOperation::getOperatorPhone , phone);
+        }
+        lambdaQueryWrapper.eq(TmOperation::getIsDelete , 0);
+        return getBaseMapper().selectPage(page , lambdaQueryWrapper);
+    }
 }

+ 2 - 0
src/main/java/fcb/project/manager/core/controller/ApiQueryHouseController.java

@@ -9,6 +9,7 @@ import fcb.project.manager.base.service.impl.TmApiHouseRecommendServiceImpl;
 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.ApiOperation;
 import lombok.extern.log4j.Log4j2;
 import org.apache.commons.lang3.StringUtils;
@@ -30,6 +31,7 @@ import java.util.Map;
  * 3 * @Date: 2021/1/11 10:10
  * 4
  */
+@Api(tags = "api房源数据查询接口")
 @Log4j2
 @RestController
 @RequestMapping("api/query")

+ 5 - 9
src/main/java/fcb/project/manager/core/controller/HouseManagerController.java

@@ -72,19 +72,15 @@ public class HouseManagerController {
 
 
     @GetMapping("/getEstateDetail")
-    @ApiOperation(value = "根据房源ID获取楼盘")
+    @ApiOperation(value = "根据楼盘ID获取楼盘详情")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "houseId", value = "房源ID", paramType = "query", required = true, dataType = "String"),
+            @ApiImplicitParam(name = "estateId", value = "楼盘ID", paramType = "query", required = true, dataType = "String"),
     })
-    public Result<Object> getHouseList(@RequestParam(required = true) String houseId){
-        if(StringUtils.isBlank(houseId)){
+    public Result<Object> getHouseList(@RequestParam(required = true) String estateId){
+        if(StringUtils.isBlank(estateId)){
             return Result.failure("楼盘ID不能为空");
         }
-        TmHouse tmHouse = tmHouseService.getById(houseId);
-        if(null == tmHouse){
-            return Result.failure("房源不存在");
-        }
-        TmEstate tmEstate = tmEstateService.getById(tmHouse.getEstateId());
+        TmEstate tmEstate = tmEstateService.getById(estateId);
         if(null == tmEstate){
             return Result.failure("楼盘不存在");
         }

+ 76 - 0
src/main/java/fcb/project/manager/core/controller/OperationController.java

@@ -0,0 +1,76 @@
+package fcb.project.manager.core.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import fcb.project.manager.base.entity.TmOperation;
+import fcb.project.manager.base.service.impl.TmOperationServiceImpl;
+import fcb.project.manager.base.utils.DataUtils;
+import fdage.back.sdk.base.entity.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.log4j.Log4j2;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 2 * @Author: Abner
+ * 3 * @Date: 2021/1/13 14:25
+ * 4
+ */
+@Api(tags = "操作日志相关接口")
+@RestController
+@RequestMapping("fcb/operation")
+@Log4j2
+public class OperationController {
+
+    @Autowired
+    private TmOperationServiceImpl tmOperationService;
+
+
+    @GetMapping("/queryOrSearchList")
+    @ApiOperation(value = "根据条件拉取所有操作记录")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "startTime", value = "时间开始", paramType = "query", required = false, dataType = "String"),
+            @ApiImplicitParam(name = "endTime", value = "时间截止", paramType = "query", required = false, dataType = "String"),
+            @ApiImplicitParam(name = "operatorName", value = "操作人(名称)", paramType = "query", required = false, dataType = "String"),
+            @ApiImplicitParam(name = "companyName", value = "所属公司", paramType = "query", required = false, dataType = "String"),
+            @ApiImplicitParam(name = "phone", value = "手机号", paramType = "query", required = false, dataType = "String"),
+            @ApiImplicitParam(name = "pageNum", value = "当前页码", paramType = "query", required = true, dataType = "Long"),
+            @ApiImplicitParam(name = "pageSize", value = "每页大小", paramType = "query", required = true, dataType = "Long")
+    })
+    public Result<Object> getHouseList(@RequestParam(required = false) String startTime,
+                                       @RequestParam(required = false) String endTime,
+                                       @RequestParam(required = false) String operatorName,
+                                       @RequestParam(required = false) String companyName,
+                                       @RequestParam(required = false) String phone,
+                                       @RequestParam() Long pageNum,
+                                       @RequestParam() Long pageSize){
+        IPage<TmOperation> resultPage = tmOperationService.getOperationList(pageNum ,pageSize ,
+                                                                             startTime , endTime ,
+                                                                              operatorName , companyName , phone);
+        return  Result.success(DataUtils.assembleResult(resultPage.getTotal(), resultPage.getPages(),
+                resultPage.getCurrent(), resultPage.getRecords()));
+    }
+
+
+    @PostMapping("/addNew")
+    @ApiOperation(value = "新增操作记录-用于四维看看、720微服务调用")
+    @Transactional(rollbackFor = Exception.class)
+    public Result<Object> addNew(@RequestBody TmOperation tmOperation){
+
+        if(!StringUtils.isNoneBlank(tmOperation.getOperatorName() ,
+                tmOperation.getOperatorPhone() , tmOperation.getOperateType() , tmOperation.getOperateContent())){
+            return Result.failure("缺失必要参数");
+        }
+        int insert = tmOperationService.insertNew(tmOperation);
+        if(insert != 1){
+            return Result.failure("新增失败");
+        }
+        return Result.success("新增成功");
+    }
+
+
+}