# Conflicts:
#	BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/entity/StuTransactionDocumentsInfo.java
#	BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/entity/StuTransactionDocumentsInfoExample.java
#	BlockFinanceCentral/src/main/resources/mappers/StuTransactionDocumentsInfoMapper.xml
master
whb
commit ca92f9a2ed

@ -1,12 +1,20 @@
package com.sztzjy.block_finance.controller;
import com.alibaba.fastjson.JSONObject;
import com.nimbusds.jose.shaded.gson.JsonObject;
import com.sztzjy.block_finance.annotation.AnonymousAccess;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfo;
import com.sztzjy.block_finance.entity.dto.StuDebtTransferDTO;
import com.sztzjy.block_finance.service.StuDebtTransferStartService;
import com.sztzjy.block_finance.util.ResultEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.ApiParam;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
* @author tz
@ -16,11 +24,55 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("api/stu/supplyChainFinance/debtTransfer")
@Api(tags = "供应链金融流程:发起债权转让贴现--智能合约执行")
public class StuDebtTransferStartController {
@Resource
StuDebtTransferStartService stuDebtTransferStartService;
@PostMapping("/debtTransferFileDisplay")
@AnonymousAccess
@ApiOperation("发起债权转让贴现--债权转让文件展示")
public ResultEntity<List<StuDebtTransferDTO>> debtTransferFileDisplay(@ApiParam("用户ID") String userId){
List<StuDebtTransferDTO> stuDebtTransferDTOList=stuDebtTransferStartService.debtTransferFileDisplay(userId);
return new ResultEntity<>(HttpStatus.OK,"成功",stuDebtTransferDTOList);
}
@PostMapping("/operate")
@AnonymousAccess
@ApiOperation("发起债权转让贴现--操作:下载、上传、读取")
public ResultEntity operate(@ApiParam("文件ID") Integer id,
@ApiParam("操作类型") String operateType){
int result=stuDebtTransferStartService.operate(id,operateType);
return new ResultEntity<>(HttpStatus.OK,operateType+"成功");
}
@PostMapping("/applicationForDebtTransfer")
@AnonymousAccess
@ApiOperation("发起债权转让贴现--发起债权转让申请")
public ResultEntity applicationForDebtTransfer(@ApiParam("用户ID") String userId){
stuDebtTransferStartService.applicationForDebtTransfer(userId);
return new ResultEntity<>(HttpStatus.OK,"成功");
}
@PostMapping("/debtInvestigationFileDisplay")
@AnonymousAccess
@ApiOperation("债项调查--债权转让文件展示")
public ResultEntity<List<StuDebtInvestigationInfo>> debtInvestigationFileDisplay(@ApiParam("用户ID") String userId){
List<StuDebtInvestigationInfo> stuDebtInvestigationInfos=stuDebtTransferStartService.debtInvestigationFileDisplay(userId);
return new ResultEntity<>(HttpStatus.OK,"成功",stuDebtInvestigationInfos);
}
@PostMapping("/debtInvestigationPassed")
@AnonymousAccess
@ApiOperation("债项调查--债项调查通过")
public ResultEntity debtInvestigationPassed(@RequestBody List<StuDebtInvestigationInfo> stuDebtInvestigationInfo){
stuDebtTransferStartService.debtInvestigationPassed(stuDebtInvestigationInfo);
return new ResultEntity(HttpStatus.OK,"通过");
}
@PostMapping("/getStuHashNavigation")
@PostMapping("/supplierFileDisplay")
@AnonymousAccess
@ApiOperation("债权转让文件展示")
public ResultEntity debtTransferFileDisplay(){
return null;
@ApiOperation("数字签章确权(供应商/核心企业/保理公司)--文件展示")
public ResultEntity<List<StuDebtTransferDTO>> supplierFileDisplay(@ApiParam("用户ID") String userId){
List<StuDebtTransferDTO> stuDebtTransferDTOList=stuDebtTransferStartService.supplierFileDisplay(userId);
return new ResultEntity<>(HttpStatus.OK,"成功",stuDebtTransferDTOList);
}
}

@ -0,0 +1,24 @@
package com.sztzjy.block_finance.entity.dto;
import lombok.Data;
/**
* @author tz
* @date 2024/3/7 14:02
*/
@Data
public class StuDebtTransferDTO {
private Integer id;
private String fileName;
private String url;
private Integer uploadStatus;
private Integer readStatus;
private Integer downloadStatus;
private String userId;
}

@ -3,8 +3,10 @@ package com.sztzjy.block_finance.mappers;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfo;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfoExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface StuDebtInvestigationInfoMapper {
long countByExample(StuDebtInvestigationInfoExample example);

@ -0,0 +1,24 @@
package com.sztzjy.block_finance.service;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfo;
import com.sztzjy.block_finance.entity.dto.StuDebtTransferDTO;
import java.util.List;
/**
* @author tz
* @date 2024/3/7 14:05
*/
public interface StuDebtTransferStartService {
List<StuDebtTransferDTO> debtTransferFileDisplay(String userId);
int operate(Integer id, String operateType);
void applicationForDebtTransfer(String userId);
List<StuDebtInvestigationInfo> debtInvestigationFileDisplay(String userId);
void debtInvestigationPassed(List<StuDebtInvestigationInfo> stuDebtInvestigationInfo);
List<StuDebtTransferDTO> supplierFileDisplay(String userId);
}

@ -0,0 +1,124 @@
package com.sztzjy.block_finance.service.impl;
import com.sztzjy.block_finance.config.exception.handler.ServiceException;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfo;
import com.sztzjy.block_finance.entity.StuDebtInvestigationInfoExample;
import com.sztzjy.block_finance.entity.StuTransactionDocumentsInfo;
import com.sztzjy.block_finance.entity.StuTransactionDocumentsInfoExample;
import com.sztzjy.block_finance.entity.dto.StuDebtTransferDTO;
import com.sztzjy.block_finance.mappers.StuDebtInvestigationInfoMapper;
import com.sztzjy.block_finance.mappers.StuTransactionDocumentsInfoMapper;
import com.sztzjy.block_finance.service.StuDebtTransferStartService;
import com.sztzjy.block_finance.util.ConvertUtil;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.UUID;
/**
* @author tz
* @date 2024/3/7 14:05
*/
@Service
public class StuDebtTransferStartServiceImpl implements StuDebtTransferStartService {
@Resource
ConvertUtil convertUtil;
@Resource
StuTransactionDocumentsInfoMapper stuTransactionDocumentsInfoMapper;
@Resource
StuDebtInvestigationInfoMapper stuDebtInvestigationInfoMapper;
@Override
public List<StuDebtTransferDTO> debtTransferFileDisplay(String userId) {
StuTransactionDocumentsInfoExample stuTransactionDocumentsInfoExample=new StuTransactionDocumentsInfoExample();
stuTransactionDocumentsInfoExample.createCriteria().andUserIdEqualTo(userId);
List<StuTransactionDocumentsInfo> stuTransactionDocumentsInfoList = stuTransactionDocumentsInfoMapper.selectByExample(stuTransactionDocumentsInfoExample);
if(stuTransactionDocumentsInfoList.isEmpty()){
//查询默认数据
StuTransactionDocumentsInfoExample example = new StuTransactionDocumentsInfoExample();
example.createCriteria().andUserIdIsNull();
List<StuTransactionDocumentsInfo> stuTransactionDocumentsInfos = stuTransactionDocumentsInfoMapper.selectByExample(example);
for (int i = 0; i < stuTransactionDocumentsInfos.size(); i++) {
StuTransactionDocumentsInfo stuTransactionDocumentsInfo = stuTransactionDocumentsInfos.get(i);
Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode();
uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空
stuTransactionDocumentsInfo.setId(uuid);
stuTransactionDocumentsInfo.setUserId(userId);
stuTransactionDocumentsInfoMapper.insert(stuTransactionDocumentsInfo);
stuTransactionDocumentsInfoList.add(stuTransactionDocumentsInfo);
}
}
List<StuDebtTransferDTO> stuDebtTransferDTOList = convertUtil.entityToDTOList(stuTransactionDocumentsInfoList, StuDebtTransferDTO.class);
return stuDebtTransferDTOList;
}
@Override
public int operate(Integer id, String operateType) {
StuTransactionDocumentsInfo stuTransactionDocumentsInfo = stuTransactionDocumentsInfoMapper.selectByPrimaryKey(id);
if(operateType.equals("下载")){
stuTransactionDocumentsInfo.setDownloadStatus(1);
}
if(operateType.equals("上传")){
if(stuTransactionDocumentsInfo.getDownloadStatus()!=1){
throw new ServiceException(HttpStatus.ACCEPTED,"未下载文件,无法上传");
}
stuTransactionDocumentsInfo.setUploadStatus(1);
}
if(operateType.equals("读取")){
if(stuTransactionDocumentsInfo.getUploadStatus()!=1){
throw new ServiceException(HttpStatus.ACCEPTED,"未上传文件,无法读取");
}
stuTransactionDocumentsInfo.setReadStatus(1);
}
int update = stuTransactionDocumentsInfoMapper.updateByPrimaryKey(stuTransactionDocumentsInfo);
return update;
}
@Override
public void applicationForDebtTransfer(String userId) {
StuTransactionDocumentsInfoExample stuTransactionDocumentsInfoExample=new StuTransactionDocumentsInfoExample();
stuTransactionDocumentsInfoExample.createCriteria().andUserIdEqualTo(userId);
List<StuTransactionDocumentsInfo> stuTransactionDocumentsInfos = stuTransactionDocumentsInfoMapper.selectByExample(stuTransactionDocumentsInfoExample);
for (int i = 0; i < stuTransactionDocumentsInfos.size(); i++) {
if(stuTransactionDocumentsInfos.get(i).getReadStatus()!=1){
throw new ServiceException(HttpStatus.ACCEPTED,"文件未全部读取");
}
}
}
@Override
public List<StuDebtInvestigationInfo> debtInvestigationFileDisplay(String userId) {
List<StuDebtInvestigationInfo> stuDebtInvestigationInfos = stuDebtInvestigationInfoMapper.selectByExample(null);
return stuDebtInvestigationInfos;
}
@Override
public void debtInvestigationPassed(List<StuDebtInvestigationInfo> stuDebtInvestigationInfo) {
//查询内置数据
List<StuDebtInvestigationInfo> stuDebtInvestigationInfos = stuDebtInvestigationInfoMapper.selectByExample(null);
//进行比较
for (int i = 0; i < stuDebtInvestigationInfo.size(); i++) {
for (int j = 0; j < stuDebtInvestigationInfos.size(); j++) {
if(stuDebtInvestigationInfo.get(i).getId()==stuDebtInvestigationInfos.get(j).getId()){ //是否是同一文件
if(!stuDebtInvestigationInfo.get(i).getOnAnalysis().equals(stuDebtInvestigationInfos.get(j).getOnAnalysis())){
throw new ServiceException(HttpStatus.ACCEPTED,"分析结果选择错误");
}
break;
}
}
}
}
@Override
public List<StuDebtTransferDTO> supplierFileDisplay(String userId) {
StuTransactionDocumentsInfoExample example=new StuTransactionDocumentsInfoExample();
example.createCriteria().andUserIdEqualTo(userId).andSupplierDisplayEqualTo(1);
List<StuTransactionDocumentsInfo> stuTransactionDocumentsInfoList = stuTransactionDocumentsInfoMapper.selectByExample(example);
List<StuDebtTransferDTO> stuDebtTransferDTOList = convertUtil.entityToDTOList(stuTransactionDocumentsInfoList, StuDebtTransferDTO.class);
return stuDebtTransferDTOList;
}
}
Loading…
Cancel
Save