新增征信维护对象与依赖骨架

This commit is contained in:
wkc
2026-03-24 09:03:23 +08:00
parent fc78c2f3d9
commit 6959c7a49d
13 changed files with 310 additions and 0 deletions

View File

@@ -29,6 +29,12 @@
<artifactId>ruoyi-system</artifactId>
</dependency>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ccdi-lsfx</artifactId>
<version>3.9.1</version>
</dependency>
<!-- easyexcel工具 -->
<dependency>
<groupId>com.alibaba</groupId>

View File

@@ -0,0 +1,39 @@
package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 员工征信负面信息对象 ccdi_credit_negative_info
*/
@Data
@TableName("ccdi_credit_negative_info")
public class CcdiCreditNegativeInfo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@TableId(type = IdType.AUTO)
private Long negativeId;
private String personId;
private String personName;
private Date queryDate;
private Integer civilCnt;
private Integer enforceCnt;
private Integer admCnt;
private BigDecimal civilLmt;
private BigDecimal enforceLmt;
private BigDecimal admLmt;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
}

View File

@@ -0,0 +1,40 @@
package com.ruoyi.info.collection.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 员工征信负债明细对象 ccdi_debts_info
*/
@Data
@TableName("ccdi_debts_info")
public class CcdiDebtsInfo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@TableId(type = IdType.AUTO)
private Long debtId;
private String personId;
private String personName;
private Date queryDate;
private String debtMainType;
private String debtSubType;
private String creditorType;
private String debtName;
private BigDecimal principalBalance;
private BigDecimal debtTotalAmount;
private String debtStatus;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
}

View File

@@ -0,0 +1,21 @@
package com.ruoyi.info.collection.domain.dto;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 征信维护查询 DTO
*/
@Data
public class CcdiCreditInfoQueryDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private String name;
private String staffId;
private String idCard;
private String maintained;
}

View File

@@ -0,0 +1,24 @@
package com.ruoyi.info.collection.domain.vo;
import com.ruoyi.info.collection.domain.CcdiDebtsInfo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
/**
* 征信详情聚合 VO
*/
@Data
public class CreditInfoDetailVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private String personId;
private String personName;
private String idCard;
private CreditInfoNegativeVO negativeInfo;
private List<CcdiDebtsInfo> debtList;
}

View File

@@ -0,0 +1,29 @@
package com.ruoyi.info.collection.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 征信维护列表 VO
*/
@Data
public class CreditInfoListVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private Long staffId;
private String name;
private String idCard;
private String deptName;
private Date queryDate;
private Long debtCount;
private BigDecimal debtTotalAmount;
private Integer civilCnt;
private Integer enforceCnt;
private Integer admCnt;
}

View File

@@ -0,0 +1,28 @@
package com.ruoyi.info.collection.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 征信负面信息展示 VO
*/
@Data
public class CreditInfoNegativeVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private String personId;
private String personName;
private Date queryDate;
private Integer civilCnt;
private Integer enforceCnt;
private Integer admCnt;
private BigDecimal civilLmt;
private BigDecimal enforceLmt;
private BigDecimal admLmt;
}

View File

@@ -0,0 +1,21 @@
package com.ruoyi.info.collection.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 征信上传失败结果 VO
*/
@Data
public class CreditInfoUploadFailureVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private String fileName;
private String personId;
private String personName;
private String reason;
}

View File

@@ -0,0 +1,23 @@
package com.ruoyi.info.collection.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* 征信上传结果 VO
*/
@Data
public class CreditInfoUploadResultVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
private Integer totalCount;
private Integer successCount;
private Integer failureCount;
private List<CreditInfoUploadFailureVO> failures = new ArrayList<>();
}

View File

@@ -0,0 +1,27 @@
package com.ruoyi.info.collection.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.info.collection.domain.dto.CcdiCreditInfoQueryDTO;
import com.ruoyi.info.collection.domain.vo.CreditInfoDetailVO;
import com.ruoyi.info.collection.domain.vo.CreditInfoListVO;
import org.apache.ibatis.annotations.Param;
import java.time.LocalDate;
import java.util.List;
/**
* 征信维护聚合查询 Mapper
*/
public interface CcdiCreditInfoQueryMapper {
Page<CreditInfoListVO> selectCreditInfoPage(@Param("page") Page<CreditInfoListVO> page,
@Param("query") CcdiCreditInfoQueryDTO queryDTO);
CreditInfoListVO selectCreditInfoSummaryByPersonId(@Param("personId") String personId);
CreditInfoDetailVO selectCreditInfoDetailByPersonId(@Param("personId") String personId);
List<CreditInfoListVO> selectCreditInfoList(@Param("query") CcdiCreditInfoQueryDTO queryDTO);
LocalDate selectLatestQueryDate(@Param("personId") String personId);
}

View File

@@ -0,0 +1,15 @@
package com.ruoyi.info.collection.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.info.collection.domain.CcdiCreditNegativeInfo;
import org.apache.ibatis.annotations.Param;
/**
* 员工征信负面信息 Mapper
*/
public interface CcdiCreditNegativeInfoMapper extends BaseMapper<CcdiCreditNegativeInfo> {
CcdiCreditNegativeInfo selectByPersonId(@Param("personId") String personId);
int deleteByPersonId(@Param("personId") String personId);
}

View File

@@ -0,0 +1,19 @@
package com.ruoyi.info.collection.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.info.collection.domain.CcdiDebtsInfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 员工征信负债明细 Mapper
*/
public interface CcdiDebtsInfoMapper extends BaseMapper<CcdiDebtsInfo> {
List<CcdiDebtsInfo> selectByPersonId(@Param("personId") String personId);
int deleteByPersonId(@Param("personId") String personId);
int insertBatch(@Param("list") List<CcdiDebtsInfo> list);
}

View File

@@ -0,0 +1,18 @@
package com.ruoyi.info.collection.service;
import com.ruoyi.info.collection.domain.dto.CcdiCreditInfoQueryDTO;
import com.ruoyi.info.collection.domain.vo.CreditInfoUploadResultVO;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertNotNull;
class CcdiCreditInfoServiceImplTest {
@Test
void shouldCompileCreditInfoContracts() {
CcdiCreditInfoQueryDTO queryDTO = new CcdiCreditInfoQueryDTO();
CreditInfoUploadResultVO resultVO = new CreditInfoUploadResultVO();
assertNotNull(queryDTO);
assertNotNull(resultVO);
}
}