mengshibin 4 лет назад
Родитель
Сommit
703e5bd7d3

+ 16 - 0
fcb-project-manager-core/src/main/java/fcb/project/manager/base/dao/TmAuditLogDao.java

@@ -0,0 +1,16 @@
+package fcb.project.manager.base.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import fcb.project.manager.base.entity.TmAuditLog;
+
+/**
+ * <p>
+ * 审核表 Mapper 接口
+ * </p>
+ *
+ * @author abner
+ * @since 2021-01-08
+ */
+public interface TmAuditLogDao extends BaseMapper<TmAuditLog> {
+
+}

+ 83 - 0
fcb-project-manager-core/src/main/java/fcb/project/manager/base/entity/TmAuditLog.java

@@ -0,0 +1,83 @@
+package fcb.project.manager.base.entity;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 审核表
+ * </p>
+ *
+ * @author abner
+ * @since 2021-01-08
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="TmAudit对象", description="审核表")
+public class TmAuditLog implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    @ApiModelProperty(value = "唯一ID")
+    private String id;
+
+    @ApiModelProperty(value = "vr房源ID")
+    private String vrId;
+
+    @ApiModelProperty(value = "审核记录id")
+    private String auditId;
+
+    @ApiModelProperty(value = "审核类型:0提审,1审核")
+    private Integer auditType;
+
+    @ApiModelProperty(value = "公司名称")
+    private String belongCompanyName;
+
+    @ApiModelProperty(value = "所属公司ID")
+    private String belongCompanyId;
+
+    @ApiModelProperty(value = "审核状态: 0->待审核;1->集团审核通过;-1->集团驳回;2->地区审核通过;->-4地区驳回")
+    private Integer auditStatus;
+
+    @ApiModelProperty(value = "审核备注")
+    private String auditRemark;
+
+    @ApiModelProperty(value = "审核人名字")
+    private String auditorName;
+
+    @ApiModelProperty(value = "审核人的ID")
+    private String auditorId;
+
+    @ApiModelProperty(value = "审核时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime auditTime;
+
+    @ApiModelProperty(value = "创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "最新更新时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty(value = "是否删除: 0->未删除; 1->已删除")
+    @TableField("isDelete")
+    @TableLogic
+    private Integer isDelete;
+
+
+}

+ 16 - 0
fcb-project-manager-core/src/main/java/fcb/project/manager/base/service/ITmAuditLogService.java

@@ -0,0 +1,16 @@
+package fcb.project.manager.base.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import fcb.project.manager.base.entity.TmAuditLog;
+
+/**
+ * <p>
+ * 审核表 服务类
+ * </p>
+ *
+ * @author abner
+ * @since 2021-01-08
+ */
+public interface ITmAuditLogService extends IService<TmAuditLog> {
+
+}

+ 33 - 0
fcb-project-manager-core/src/main/java/fcb/project/manager/base/service/impl/TmAuditLogServiceImpl.java

@@ -0,0 +1,33 @@
+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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import fcb.project.manager.base.dao.TmAuditLogDao;
+import fcb.project.manager.base.entity.TmAuditLog;
+import fcb.project.manager.base.enums.AuditStatus;
+import fcb.project.manager.base.service.ITmAuditLogService;
+import lombok.extern.log4j.Log4j2;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+
+/**
+ * Created by Hb_zzZ on 2021/5/31.
+ */
+@Service
+@Log4j2
+public class TmAuditLogServiceImpl extends ServiceImpl<TmAuditLogDao, TmAuditLog> implements ITmAuditLogService {
+
+    public IPage<TmAuditLog> queryAuditLogList(Long pageNum , Long pageSize , String houseId){
+        IPage<TmAuditLog> page = new Page<>(pageNum , pageSize);
+        LambdaQueryWrapper<TmAuditLog> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.ne(TmAuditLog::getAuditStatus , AuditStatus.WAITING_AUDIT.getCode());
+        lambdaQueryWrapper.ne(TmAuditLog::getAuditStatus , AuditStatus.SHOOT_AUDIT.getCode());
+        if(StringUtils.isNotBlank(houseId)){
+            lambdaQueryWrapper.eq(TmAuditLog::getVrId , houseId);
+        }
+        lambdaQueryWrapper.orderByDesc(TmAuditLog::getAuditTime);
+        return getBaseMapper().selectPage(page , lambdaQueryWrapper);
+    }
+}

+ 8 - 2
fcb-project-manager-core/src/main/java/fcb/project/manager/base/service/impl/TmHouseServiceImpl.java

@@ -144,7 +144,7 @@ public class TmHouseServiceImpl extends ServiceImpl<TmHouseDao, TmHouse> impleme
 
                 allSceneNums = panoService.getAllSceneNums(vrId, token);
                 if(allSceneNums != null){
-                    param.put("sceneNum", allSceneNums.stream().filter(string ->!string.isEmpty()).collect(Collectors.joining(", ")));
+                    param.put("sceneNum", allSceneNums.stream().filter(string ->!string.isEmpty()).collect(Collectors.joining(";")));
                     sceneRspBean = sceneFeign.statisticsPoints(param, token);
 
                     if(null == sceneRspBean || sceneRspBean.getCode() != 0){
@@ -273,7 +273,13 @@ public class TmHouseServiceImpl extends ServiceImpl<TmHouseDao, TmHouse> impleme
         lambdaQueryWrapper.orderByDesc(TmHouse::getSubmitAuditTime);
         if (null != status) {
             if (HouseStatus.ALL.getCode().compareTo(status) != 0) {
-                lambdaQueryWrapper.eq(TmHouse::getStatus, status);
+                //当获取的是未通过的数据时,获取所有<=-1的数据
+                if(HouseStatus.REJECT.getCode().compareTo(status) == 0){
+                    lambdaQueryWrapper.le(TmHouse::getStatus, status);
+                }else {
+                    //其余根据状态获取
+                    lambdaQueryWrapper.eq(TmHouse::getStatus, status);
+                }
             } else {
                 lambdaQueryWrapper.ne(TmHouse::getStatus, HouseStatus.DRAFT.getCode());
             }

+ 46 - 2
fcb-project-manager-core/src/main/java/fcb/project/manager/core/controller/AuditController.java

@@ -5,8 +5,10 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import fcb.project.manager.base.entity.*;
 import fcb.project.manager.base.enums.AuditStatus;
+import fcb.project.manager.base.enums.DeleteStatus;
 import fcb.project.manager.base.enums.HouseStatus;
 import fcb.project.manager.base.service.custom.PanoService;
+import fcb.project.manager.base.service.impl.TmAuditLogServiceImpl;
 import fcb.project.manager.base.service.impl.TmAuditServiceImpl;
 import fcb.project.manager.base.service.impl.TmHouseServiceImpl;
 import fcb.project.manager.base.service.impl.TmOperationServiceImpl;
@@ -16,6 +18,7 @@ import fcb.project.manager.core.feignInterfaces.SceneFeign;
 import fdage.back.sdk.base.entity.Result;
 import fdage.back.sdk.base.enums.ResultCodeEnum;
 import fdage.back.sdk.base.exception.CommonBaseException;
+import fdage.back.sdk.base.uuid.SnowFlakeUUidUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -52,6 +55,9 @@ public class AuditController extends BaseController{
     private TmAuditServiceImpl tmAuditService;
 
     @Autowired
+    private TmAuditLogServiceImpl tmAuditLogService;
+
+    @Autowired
     private TmHouseServiceImpl tmHouseService;
 
     @Autowired
@@ -86,8 +92,22 @@ public class AuditController extends BaseController{
                                     Integer auditStatus , Long pageNum , Long pageSize , String houseId){
 
         IPage<TmAudit> resultPage = tmAuditService.queryOrSearchList(vrTitle , vrType ,
-                                                                    belongEstate , belongCompany ,
-                                                                    auditStatus , pageNum , pageSize , houseId);
+                belongEstate , belongCompany ,
+                auditStatus , pageNum , pageSize , houseId);
+        return  Result.success(DataUtils.assembleResult(resultPage.getTotal(), resultPage.getPages(),
+                resultPage.getCurrent(), resultPage.getRecords()));
+    }
+
+    @GetMapping("/queryAuditLogList")
+    @ApiOperation(value = "根据条件拉取所有审批记录")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "pageNum", value = "当前页码", paramType = "query", required = true, dataType = "Long"),
+            @ApiImplicitParam(name = "pageSize", value = "每页大小", paramType = "query", required = true, dataType = "Long"),
+            @ApiImplicitParam(name = "houseId", value = "房源ID", paramType = "query", required = false, dataType = "String")
+    })
+    public Result<Object> queryAuditLogList(Long pageNum , Long pageSize , String houseId){
+
+        IPage<TmAuditLog> resultPage = tmAuditLogService.queryAuditLogList(pageNum , pageSize , houseId);
         return  Result.success(DataUtils.assembleResult(resultPage.getTotal(), resultPage.getPages(),
                 resultPage.getCurrent(), resultPage.getRecords()));
     }
@@ -124,6 +144,7 @@ public class AuditController extends BaseController{
         }
         ContextTokenBean tokenMap = getContextUserInfo();
 
+        TmAuditLog tmAuditLog = new TmAuditLog();
         //这里要先锁定当前审核记录
         tmAudit = null;
         tmAudit = tmAuditService.selectForUpdate(auditRequestBean.getId());
@@ -144,10 +165,13 @@ public class AuditController extends BaseController{
         if(AuditStatus.AUDITED.getCode().compareTo(auditRequestBean.getAuditStatus()) == 0){
             if(AuditStatus.SHOOT_AUDIT.getCode().compareTo(tmAudit.getAuditStatus().intValue()) == 0){
                 tmAudit.setAuditStatus(AuditStatus.WAITING_AUDIT.getCode());
+                tmAuditLog.setAuditStatus(AuditStatus.WAITING_AUDIT.getCode());
                 //地区审核通过,修改成待集团审核
                 dbHouse.setStatus(HouseStatus.WAITING_AUDIT.getCode());
+
             }else {
                 tmAudit.setAuditStatus(AuditStatus.AUDITED.getCode());
+                tmAuditLog.setAuditStatus(AuditStatus.AUDITED.getCode());
 
                 dbHouse.setStatus(HouseStatus.AUDITED.getCode());
             }
@@ -156,11 +180,13 @@ public class AuditController extends BaseController{
             if(AuditStatus.SHOOT_AUDIT.getCode().compareTo(tmAudit.getAuditStatus().intValue()) == 0){
                 //处于拍摄审核状态时,修改成地区审核不通过
                 tmAudit.setAuditStatus(AuditStatus.REGION_REJECT.getCode());
+                tmAuditLog.setAuditStatus(AuditStatus.REGION_REJECT.getCode());
                 //地区审核通过,修改成待集团审核
                 dbHouse.setStatus(HouseStatus.REGION_REJECT.getCode());
             }else {
                 //修改成集团审核不通过
                 tmAudit.setAuditStatus(AuditStatus.REJECT.getCode());
+                tmAuditLog.setAuditStatus(AuditStatus.REJECT.getCode());
 
                 dbHouse.setStatus(HouseStatus.REJECT.getCode());
             }
@@ -220,6 +246,24 @@ public class AuditController extends BaseController{
         if(ins != 1){
             log.info("插入操作记录失败");
         }
+
+        //增加审核操作记录
+        tmAuditLog.setId(SnowFlakeUUidUtils.generaUUid(null , null , "AUL00000"));
+        tmAuditLog.setVrId(dbHouse.getId());
+        tmAuditLog.setAuditId(tmAudit.getId());
+        tmAuditLog.setAuditType(1);
+        tmAuditLog.setAuditRemark(auditRequestBean.getAuditRemark());
+        tmAuditLog.setAuditTime(LocalDateTime.now());
+        tmAuditLog.setAuditorId(tokenMap.getId());
+        tmAuditLog.setAuditorName(tokenMap.getNickName());
+        tmAuditLog.setBelongCompanyId(tokenMap.getDepartmentId());
+        tmAuditLog.setBelongCompanyName(tokenMap.getDepartmentName());
+        tmAuditLog.setCreateTime(LocalDateTime.now());
+        tmAuditLog.setUpdateTime(LocalDateTime.now());
+        tmAuditLog.setIsDelete(DeleteStatus.NOT_DELETE.getCode());
+
+        tmAuditLogService.save(tmAuditLog);
+
         Map<String , Object> resMap = new HashMap<>();
         resMap.put("auditId" , tmAudit.getId());
         return Result.success("审核成功" , resMap);

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

@@ -5,13 +5,11 @@ import com.aliyun.oss.internal.OSSUtils;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import fcb.project.manager.base.entity.*;
 import fcb.project.manager.base.enums.AuditStatus;
+import fcb.project.manager.base.enums.DeleteStatus;
 import fcb.project.manager.base.enums.HouseStatus;
 import fcb.project.manager.base.enums.SysUserRoleEnums;
 import fcb.project.manager.base.service.custom.PanoService;
-import fcb.project.manager.base.service.impl.TmAuditServiceImpl;
-import fcb.project.manager.base.service.impl.TmEstateServiceImpl;
-import fcb.project.manager.base.service.impl.TmHouseServiceImpl;
-import fcb.project.manager.base.service.impl.TmOperationServiceImpl;
+import fcb.project.manager.base.service.impl.*;
 import fcb.project.manager.base.utils.DataUtils;
 import fcb.project.manager.base.utils.DateUtil;
 import fcb.project.manager.base.utils.ExcelUtil;
@@ -19,6 +17,7 @@ import fcb.project.manager.core.feignInterfaces.SceneFeign;
 import fdage.back.sdk.base.entity.Result;
 import fdage.back.sdk.base.enums.ResultCodeEnum;
 import fdage.back.sdk.base.exception.CommonBaseException;
+import fdage.back.sdk.base.uuid.SnowFlakeUUidUtils;
 import fdage.back.sdk.core.alibabaUtils.AlibabaOssHelper;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -65,6 +64,9 @@ public class HouseManagerController extends BaseController{
     private TmAuditServiceImpl tmAuditService;
 
     @Autowired
+    private TmAuditLogServiceImpl tmAuditLogService;
+
+    @Autowired
     private TmEstateServiceImpl tmEstateService;
 
     @Value("${image.local.path}")
@@ -596,7 +598,7 @@ public class HouseManagerController extends BaseController{
 
         ContextTokenBean tokenMap = getContextUserInfo();
         if(!dbHouse.getCreateById().equals(tokenMap.getId())){
-            return Result.failure("非本人创建的,无法删除");
+            return Result.failure("暂无删除权限");
         }
 
         int delete = tmHouseService.deleteHouseById(houseId);
@@ -704,6 +706,7 @@ public class HouseManagerController extends BaseController{
             return Result.failure("房源所属的楼盘不存在");
         }
 
+        TmAuditLog tmAuditLog = new TmAuditLog();
         TmAudit tmAudit = tmAuditService.addNewAuditWithRespon(dbHouse , tmEstate , tokenMap);
         if(tmAudit != null){
             dbHouse = tmHouseService.selectForUpdate(dbHouse.getId());
@@ -714,8 +717,10 @@ public class HouseManagerController extends BaseController{
             dbHouse.setAuditId(tmAudit.getId());
             dbHouse.setSubmitAuditTime(LocalDateTime.now());
             dbHouse.setStatus(HouseStatus.WAITING_AUDIT.getCode());
+            tmAuditLog.setAuditStatus(AuditStatus.WAITING_AUDIT.getCode());
             if(SysUserRoleEnums.REGION_SHOOT.getRoleKey().equals(tokenMap.getRoleKey())){
                 dbHouse.setStatus(HouseStatus.WAITING_REGION_AUDIT.getCode());
+                tmAuditLog.setAuditStatus(AuditStatus.SHOOT_AUDIT.getCode());
             }
             dbHouse.setUpdateTime(LocalDateTime.now());
             if(!tmHouseService.updateHouse(dbHouse)){
@@ -727,6 +732,21 @@ public class HouseManagerController extends BaseController{
                 log.info("插入操作记录失败");
             }
 
+            //增加审核操作记录
+            tmAuditLog.setId(SnowFlakeUUidUtils.generaUUid(null , null , "AUL00000"));
+            tmAuditLog.setVrId(dbHouse.getId());
+            tmAuditLog.setAuditId(tmAudit.getId());
+            tmAuditLog.setAuditType(0);
+            tmAuditLog.setAuditTime(LocalDateTime.now());
+            tmAuditLog.setAuditorId(tokenMap.getId());
+            tmAuditLog.setAuditorName(tokenMap.getNickName());
+            tmAuditLog.setBelongCompanyId(tokenMap.getDepartmentId());
+            tmAuditLog.setBelongCompanyName(tokenMap.getDepartmentName());
+            tmAuditLog.setCreateTime(LocalDateTime.now());
+            tmAuditLog.setUpdateTime(LocalDateTime.now());
+            tmAuditLog.setIsDelete(DeleteStatus.NOT_DELETE.getCode());
+            tmAuditLogService.save(tmAuditLog);
+
             Map<String , Object> map = new HashMap<>();
             map.put("auditId" , tmAudit.getId());
            return Result.success(map);

+ 2 - 2
pom.xml

@@ -29,7 +29,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>2.2.5.RELEASE</version>
+        <version>2.3.4.RELEASE</version>
         <relativePath/> <!-- lookup parent from repository -->
     </parent>
 
@@ -59,7 +59,7 @@
         <dependency>
             <groupId>org.4dage</groupId>
             <artifactId>4dage-back-sdk</artifactId>
-            <version>1.0.2-RELEASE</version>
+            <version>1.0.3.0-RELEASE</version>
             <exclusions>
                 <exclusion>
                     <groupId>io.lettuce</groupId>