|
|
@@ -35,6 +35,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
|
@@ -251,6 +252,7 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
SysAmountAuditingEntity sysAmountAuditingEntity = new SysAmountAuditingEntity();//审核记录表
|
|
|
sysAmountAuditingEntity.setUserId(userId);
|
|
|
sysAmountAuditingEntity.setAmount(sysUserAccountVo.getAmount());
|
|
|
+ sysUserAccountHistory.setCreateTime(new Date());
|
|
|
// SysAmountAuditingEntity judge = sysAmountAuditingService.getByUserId(userId, sysUserAccountVo.getAmountStatus());
|
|
|
// if (ObjectUtils.isNotEmpty(judge)) {
|
|
|
// return HttpResult.ok("有未提现审核单据, 请审核完成之后再提现");
|
|
|
@@ -325,12 +327,12 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
// }
|
|
|
// 提现审核插入轨迹表 待审核数据 和审核处理中的数据
|
|
|
|
|
|
- Calendar calendar = Calendar.getInstance();
|
|
|
- Date date = calendar.getTime();
|
|
|
- calendar.add(Calendar.MINUTE, 1);
|
|
|
- Date afterDate = calendar.getTime();
|
|
|
+ // Calendar calendar = Calendar.getInstance();
|
|
|
+ Date date = new Date();
|
|
|
+ //calendar.add(Calendar.MINUTE, 1);
|
|
|
+ // Date afterDate = calendar.getTime();
|
|
|
SysAmountAuditingHistory sysAmountAuditingHistory =new SysAmountAuditingHistory(null, sysAmountAuditingEntity.getId(), amount, userId,date,"1", "1",sysUserAccountHistory.getId());
|
|
|
- SysAmountAuditingHistory sysAmountAuditingHistoryTwo =new SysAmountAuditingHistory(null, sysAmountAuditingEntity.getId(), amount, userId,afterDate, "2", "1",sysUserAccountHistory.getId());
|
|
|
+ SysAmountAuditingHistory sysAmountAuditingHistoryTwo =new SysAmountAuditingHistory(null, sysAmountAuditingEntity.getId(), amount, userId,date, "2", "1",sysUserAccountHistory.getId());
|
|
|
sysAmountAuditingHistoryService.save(sysAmountAuditingHistory);
|
|
|
sysAmountAuditingHistoryService.save(sysAmountAuditingHistoryTwo);
|
|
|
|
|
|
@@ -852,10 +854,12 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
throw new SystemException("用户id-userId不能为空");
|
|
|
}
|
|
|
BigDecimal sumAmount=BigDecimal.ZERO;
|
|
|
+
|
|
|
//判断时间类型 1.一周内 2. 一月内 3. 三月内 4. 三月内
|
|
|
- HashMap<String, String> dateMap = getDateMapByType(myCollectInAdvanceQueryDto.getDateQueryType());
|
|
|
+ HashMap<String, String> dateMap = getDateMapByType(myCollectInAdvanceQueryDto.getDateQueryType(),myCollectInAdvanceQueryDto.getStartDate(),myCollectInAdvanceQueryDto.getEndDate());
|
|
|
myCollectInAdvanceQueryDto.setStartDate(dateMap.get("startDate"));
|
|
|
myCollectInAdvanceQueryDto.setEndDate(dateMap.get("endDate"));
|
|
|
+
|
|
|
if(myCollectInAdvanceQueryDto.getBusinessSegmentsType()==null || "".equals(myCollectInAdvanceQueryDto.getBusinessSegmentsType())){
|
|
|
myCollectInAdvanceQueryDto.setBusinessSegmentsType("1");
|
|
|
}
|
|
|
@@ -893,7 +897,7 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
* @Date: 2024/6/19 11:57
|
|
|
* @Description: 通过时间类型判断
|
|
|
*/
|
|
|
- private static HashMap<String,String> getDateMapByType(String type) {
|
|
|
+ private static HashMap<String,String> getDateMapByType(String type,String startDate,String endDate) {
|
|
|
HashMap<String,String> map =new HashMap<>();
|
|
|
String startDateStr="";
|
|
|
String endDateStr="";
|
|
|
@@ -917,6 +921,9 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
// 三月内
|
|
|
startDateStr=SliceUpDateUtil.getThreeMonthFirstAndLastDay(new Date(),1,6)+" 00:00:00";
|
|
|
endDateStr=SliceUpDateUtil.getThreeMonthFirstAndLastDay(new Date(),2,6)+" 23:59:59";
|
|
|
+ }else{
|
|
|
+ startDateStr= StringUtils.isNotBlank(startDate)?startDate+" 00:00:00":null;
|
|
|
+ endDateStr= StringUtils.isNotBlank(endDate)?endDate+" 23:59:59":null;
|
|
|
}
|
|
|
map.put("startDate",startDateStr);
|
|
|
map.put("endDate",endDateStr);
|
|
|
@@ -931,92 +938,104 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
*/
|
|
|
@Override
|
|
|
public MyCollectInAdvanceAllDto findIncomeAndExpensesByUserId(MyIncomeAndExpensesQueryDto myIncomeAndExpensesQueryDto) {
|
|
|
- if(StringUtils.isBlank(myIncomeAndExpensesQueryDto.getUserId())){
|
|
|
+ if (StringUtils.isBlank(myIncomeAndExpensesQueryDto.getUserId())) {
|
|
|
throw new SystemException("用户id-userId不能为空");
|
|
|
}
|
|
|
- BigDecimal sumAmountSR=BigDecimal.ZERO;
|
|
|
- BigDecimal sumAmountZC=BigDecimal.ZERO;
|
|
|
- BasePageResult<MyCollectInAdvanceDto> myCollectInAdvanceDtoBasePageResult=new BasePageResult<MyCollectInAdvanceDto>();
|
|
|
+ BigDecimal sumAmountSR = BigDecimal.ZERO;
|
|
|
+ BigDecimal sumAmountZC = BigDecimal.ZERO;
|
|
|
+ BasePageResult<MyCollectInAdvanceDto> myCollectInAdvanceDtoBasePageResult = new BasePageResult<MyCollectInAdvanceDto>();
|
|
|
+
|
|
|
//判断时间类型 1.一周内 2. 一月内 3. 三月内 4. 三月内
|
|
|
- HashMap<String, String> dateMap = getDateMapByType(myIncomeAndExpensesQueryDto.getDateQueryType());
|
|
|
+ HashMap<String, String> dateMap = getDateMapByType(myIncomeAndExpensesQueryDto.getDateQueryType(), myIncomeAndExpensesQueryDto.getStartDate(), myIncomeAndExpensesQueryDto.getEndDate());
|
|
|
myIncomeAndExpensesQueryDto.setStartDate(dateMap.get("startDate"));
|
|
|
myIncomeAndExpensesQueryDto.setEndDate(dateMap.get("endDate"));
|
|
|
+
|
|
|
Page<MyCollectInAdvanceDto> page = new Page<>(myIncomeAndExpensesQueryDto.getPageNum(), myIncomeAndExpensesQueryDto.getPageSize());
|
|
|
page.setSearchCount(false).setOptimizeCountSql(false);//关闭count查询
|
|
|
Page<MyCollectInAdvanceDto> orderVoPage = new Page<>();
|
|
|
- if(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()==null || "".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType())){
|
|
|
- myIncomeAndExpensesQueryDto.setBusinessSegmentsType("1");
|
|
|
+ if (myIncomeAndExpensesQueryDto.getBusinessSegmentsType() != null && "0".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setBusinessSegmentsType(null);
|
|
|
}
|
|
|
- if(myIncomeAndExpensesQueryDto.getTransactionType()==null || "".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
- myIncomeAndExpensesQueryDto.setTransactionType("1");
|
|
|
+ if (myIncomeAndExpensesQueryDto.getTransactionType() != null && "0".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setTransactionType(null);
|
|
|
}
|
|
|
- if(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()==null || "".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())){
|
|
|
- myIncomeAndExpensesQueryDto.setIncomeAndExpensesType("1");
|
|
|
+ if (myIncomeAndExpensesQueryDto.getTransactionType() != null && "0".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setTransactionType(null);
|
|
|
}
|
|
|
- // 1为车险板块
|
|
|
- if ("1".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType())) {
|
|
|
+ // 1为车险板块 1 收入时
|
|
|
+ if ( StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) && StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()) &&"1".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) &&"1".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())) {
|
|
|
//判断收入类型 1 收入 查询账号的历史记录表
|
|
|
- if("1".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())){
|
|
|
-
|
|
|
- //金额类型 1. 手续费金额 +跟单金额 2. 推广金额
|
|
|
- if("2".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
- myIncomeAndExpensesQueryDto.setTransactionType("3");
|
|
|
- }else if("1".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
- myIncomeAndExpensesQueryDto.setTransactionType("4");
|
|
|
- }else{
|
|
|
- throw new SystemException("收入类型不能选择提现类型");
|
|
|
- }
|
|
|
- myIncomeAndExpensesQueryDto.setIncomeAndExpensesType("2");
|
|
|
- orderVoPage = sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserId(page,myIncomeAndExpensesQueryDto);
|
|
|
- Long total=sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserIdCount(myIncomeAndExpensesQueryDto);
|
|
|
- orderVoPage.setTotal(total);
|
|
|
-
|
|
|
- sumAmountSR=sysUserAccountHistoryService.findSumAmount(myIncomeAndExpensesQueryDto);
|
|
|
- sumAmountZC=sysUserAccountHistoryService.findSumAmountByUserId(myIncomeAndExpensesQueryDto.getUserId(),"1");
|
|
|
- List<MyCollectInAdvanceDto> recordsNew =new ArrayList<>();
|
|
|
- if(orderVoPage.getRecords()!=null && orderVoPage.getRecords().size()>0){
|
|
|
- for(MyCollectInAdvanceDto dto :orderVoPage.getRecords()){
|
|
|
- if ("4".equals(dto.getTransactionType())) {
|
|
|
- dto.setTransactionType("1");
|
|
|
- }else if("3".equals(dto.getTransactionType())){
|
|
|
- dto.setTransactionType("2");
|
|
|
- }
|
|
|
- dto.setIncomeAndExpensesType("1");
|
|
|
- recordsNew.add(dto);
|
|
|
- }
|
|
|
- }
|
|
|
- orderVoPage.setRecords(recordsNew);
|
|
|
- myCollectInAdvanceDtoBasePageResult=new BasePageResult<>(myIncomeAndExpensesQueryDto.getPageNum(), myIncomeAndExpensesQueryDto.getPageSize(), orderVoPage.getTotal(),
|
|
|
- orderVoPage.getPages()
|
|
|
- , orderVoPage.getRecords());
|
|
|
- // 2.支出 查看提现记录表
|
|
|
- }else if("2".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())){
|
|
|
- //金额类型 3
|
|
|
- if(!"3".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
- throw new SystemException("支出类型不能选择(手续+跟单)或者手续费类型");
|
|
|
- }
|
|
|
- myIncomeAndExpensesQueryDto.setIncomeAndExpensesType("1");
|
|
|
- orderVoPage = sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserId(page,myIncomeAndExpensesQueryDto);
|
|
|
- Long total=sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserIdCount(myIncomeAndExpensesQueryDto);
|
|
|
- orderVoPage.setTotal(total);
|
|
|
- List<MyCollectInAdvanceDto> recordsNew =new ArrayList<>();
|
|
|
- if(orderVoPage.getRecords()!=null && orderVoPage.getRecords().size()>0){
|
|
|
- for(MyCollectInAdvanceDto dto :orderVoPage.getRecords()){
|
|
|
- dto.setIncomeAndExpensesType("2");
|
|
|
- recordsNew.add(dto);
|
|
|
+ //金额类型 1. 手续费金额 +跟单金额 2. 推广金额
|
|
|
+ if (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) && "2".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ } else if (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) &&"1".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ } else {
|
|
|
+ throw new SystemException("收入类型不能选择提现类型");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()) &&"2".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())) {
|
|
|
+ //判断收入类型 1 收入 查询账号的历史记录表
|
|
|
+ //金额类型 1. 手续费金额 +跟单金额 2. 推广金额
|
|
|
+ if(StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) && !"3".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
+ throw new SystemException("支出类型不能选择(手续+跟单)或者手续费类型");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if ( (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) && StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()) && "2".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) &&"1".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()))
|
|
|
+ ||
|
|
|
+ (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()) && ("2".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType())))){
|
|
|
+ //判断收入类型 1 收入 查询账号的历史记录表
|
|
|
+ //金额类型 1. 手续费金额 +跟单金额 2. 推广金额
|
|
|
+ if(StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) &&!"4".equals(myIncomeAndExpensesQueryDto.getTransactionType())){
|
|
|
+ throw new SystemException("退款板块只能选择退款类型");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if ( StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) && StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType()) &&"1".equals(myIncomeAndExpensesQueryDto.getBusinessSegmentsType()) &&"1".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())) {
|
|
|
+ //判断收入类型 1 收入 查询账号的历史记录表
|
|
|
+ //金额类型 1. 手续费金额 +跟单金额 2. 推广金额
|
|
|
+ if (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) && "2".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setTransactionType("3");
|
|
|
+ } else if (StringUtils.isNotBlank(myIncomeAndExpensesQueryDto.getTransactionType()) &&"1".equals(myIncomeAndExpensesQueryDto.getTransactionType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setTransactionType("4");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (myIncomeAndExpensesQueryDto.getIncomeAndExpensesType() != null && "0".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setIncomeAndExpensesType(null);
|
|
|
+ } else if (myIncomeAndExpensesQueryDto.getIncomeAndExpensesType() != null && "1".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())) {
|
|
|
+ myIncomeAndExpensesQueryDto.setIncomeAndExpensesType("2");
|
|
|
+ } else if (myIncomeAndExpensesQueryDto.getIncomeAndExpensesType() != null && "2".equals(myIncomeAndExpensesQueryDto.getIncomeAndExpensesType())){
|
|
|
+ myIncomeAndExpensesQueryDto.setIncomeAndExpensesType("1");
|
|
|
+ }
|
|
|
+ orderVoPage = sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserId(page,myIncomeAndExpensesQueryDto);
|
|
|
+ Long total=sysUserAccountHistoryService.findMyIncomeAndExpensesAmountByUserIdCount(myIncomeAndExpensesQueryDto);
|
|
|
+ orderVoPage.setTotal(total);
|
|
|
+ List<MyCollectInAdvanceDto> recordsNew =new ArrayList<>();
|
|
|
+ if(orderVoPage.getRecords()!=null && orderVoPage.getRecords().size()>0){
|
|
|
+ for(MyCollectInAdvanceDto dto :orderVoPage.getRecords()) {
|
|
|
+ //车险的显示且收入
|
|
|
+ if ("1".equals(dto.getBusinessSegmentsType()) && "2".equals(dto.getIncomeAndExpensesType())) {
|
|
|
+ if ("4".equals(dto.getTransactionType())) {
|
|
|
+ dto.setTransactionType("1");
|
|
|
+ } else if ("3".equals(dto.getTransactionType())) {
|
|
|
+ dto.setTransactionType("2");
|
|
|
}
|
|
|
+ dto.setIncomeAndExpensesType("1");
|
|
|
+ //退款 且退款
|
|
|
+ } else if ("2".equals(dto.getBusinessSegmentsType()) && "2".equals(dto.getIncomeAndExpensesType())){
|
|
|
+ dto.setIncomeAndExpensesType("1");
|
|
|
+ //提现
|
|
|
+ }else if("3".equals(dto.getTransactionType()) && "1".equals(dto.getIncomeAndExpensesType())){
|
|
|
+ dto.setIncomeAndExpensesType("2");
|
|
|
}
|
|
|
- orderVoPage.setRecords(recordsNew);
|
|
|
- myCollectInAdvanceDtoBasePageResult=new BasePageResult<>(myIncomeAndExpensesQueryDto.getPageNum(), myIncomeAndExpensesQueryDto.getPageSize(), orderVoPage.getTotal(),
|
|
|
- orderVoPage.getPages()
|
|
|
- , orderVoPage.getRecords());
|
|
|
- sumAmountSR=sysUserAccountHistoryService.findSumAmountByUserId(myIncomeAndExpensesQueryDto.getUserId(),"2");
|
|
|
- sumAmountZC=sysUserAccountHistoryService.findSumAmount(myIncomeAndExpensesQueryDto);
|
|
|
+ recordsNew.add(dto);
|
|
|
}
|
|
|
-
|
|
|
- } else {
|
|
|
- //其他板块预留逻辑处理
|
|
|
}
|
|
|
+ orderVoPage.setRecords(recordsNew);
|
|
|
+ myCollectInAdvanceDtoBasePageResult = new BasePageResult<>(myIncomeAndExpensesQueryDto.getPageNum(), myIncomeAndExpensesQueryDto.getPageSize(), orderVoPage.getTotal(),
|
|
|
+ orderVoPage.getPages()
|
|
|
+ , orderVoPage.getRecords());
|
|
|
+ //
|
|
|
+
|
|
|
+ sumAmountSR=sysUserAccountHistoryService.findSumAmountByUserId(myIncomeAndExpensesQueryDto.getUserId(),"2");
|
|
|
+ sumAmountZC=sysUserAccountHistoryService.findSumAmountByUserId(myIncomeAndExpensesQueryDto.getUserId(),"1");
|
|
|
return new MyCollectInAdvanceAllDto(sumAmountSR,sumAmountZC,myCollectInAdvanceDtoBasePageResult);
|
|
|
}
|
|
|
/**
|
|
|
@@ -1098,4 +1117,20 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
|
|
|
public OrderDetalsDto findOrderDetailById(String subOrderId) {
|
|
|
return null;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @version
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/6/21 18:27
|
|
|
+ * @Description: 查看退款详情
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public RefundDetalsDto findRefundDetailById(String id) {
|
|
|
+ //id为历史表的id
|
|
|
+ //通过历史记录表查询数据
|
|
|
+ SysUserAccountHistory his = sysUserAccountHistoryService.getById(id);
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ String dateStr = sdf.format(his.getCreateTime());
|
|
|
+ return new RefundDetalsDto(dateStr,his.getAmount(),his.getAuditiingId());
|
|
|
+ }
|
|
|
}
|