From ba23989d591a64e47ad2fdbfa95e2958d4240979 Mon Sep 17 00:00:00 2001 From: tianyongbao Date: Mon, 24 Feb 2025 13:44:49 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=99=BA=E8=81=AA=E8=AE=B0=E8=B4=A6?= =?UTF-8?q?=E7=AE=A1=E7=90=86=EF=BC=8C=E6=96=B0=E5=A2=9E=E7=9D=A1=E7=9C=A0?= =?UTF-8?q?=E8=B4=A6=E6=88=B7=E7=BB=9F=E8=AE=A1=E5=8A=9F=E8=83=BD=EF=BC=8C?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=B1=95=E7=A4=BA=E4=BD=99=E9=A2=9D=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StatisticAnalysisController.java | 14 +++ .../com/intc/invest/domain/vo/AccountsVo.java | 12 +++ .../mapper/StatisticAnalysisMapper.java | 10 ++ .../service/IStatisticAnalysisService.java | 11 +++ .../service/impl/AccountsServiceImpl.java | 6 ++ .../service/impl/StatisticAnalysisImpl.java | 54 +++++++++++ .../mapper/invest/AccountsMapper.xml | 10 +- .../mapper/invest/StatisticAnalysisMapper.xml | 96 +++++++++++++++++++ 8 files changed, 211 insertions(+), 2 deletions(-) diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/controller/StatisticAnalysisController.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/controller/StatisticAnalysisController.java index cd52c1d..c0c7387 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/controller/StatisticAnalysisController.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/controller/StatisticAnalysisController.java @@ -2,8 +2,11 @@ package com.intc.invest.controller; import com.intc.common.core.web.controller.BaseController; import com.intc.common.core.web.domain.AjaxResult; +import com.intc.common.core.web.page.TableDataInfo; +import com.intc.invest.domain.dto.AccountsDto; import com.intc.invest.domain.dto.AnalysisDto; import com.intc.invest.domain.vo.AccountCalendarVo; +import com.intc.invest.domain.vo.AccountsVo; import com.intc.invest.service.IStatisticAnalysisService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -170,6 +173,17 @@ public class StatisticAnalysisController extends BaseController { return AjaxResult.success(resultMap); } + /** + * 查询睡眠账户统计列表 + */ + @ApiOperation(value="查询睡眠账户统计列表",response = AccountsVo.class) + @GetMapping("/sleepAccountsList") + public TableDataInfo sleepAccountsList(AccountsDto accountsDto) + { + startPage(); + List list = iStatisticAnalysisService.selectAccountsList(accountsDto); + return getDataTable(list); + } diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/domain/vo/AccountsVo.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/domain/vo/AccountsVo.java index 83e523d..7428e07 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/domain/vo/AccountsVo.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/domain/vo/AccountsVo.java @@ -1,9 +1,13 @@ package com.intc.invest.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.intc.invest.domain.Accounts; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; + +import java.util.Date; + /** * 记账账户Vo对象 accounts * @@ -46,4 +50,12 @@ public class AccountsVo extends Accounts private String advicePosNames; + /** 最新交易时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date recentDealTime; + + @ApiModelProperty(value="距上次交易时间间隔") + private String duration; + + } diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/mapper/StatisticAnalysisMapper.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/mapper/StatisticAnalysisMapper.java index e17b22c..5a0915f 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/mapper/StatisticAnalysisMapper.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/mapper/StatisticAnalysisMapper.java @@ -95,4 +95,14 @@ public interface StatisticAnalysisMapper { @DataScope(businessAlias = "t") public List selectPosStaticList(AccountsDto accountsDto); + /** + * 查询记账账户列表 + * + * @param accountsDto 记账账户 + * @return 记账账户集合 + */ + @DataScope(businessAlias = "a") + public List selectAccountsList(AccountsDto accountsDto); + + } diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/IStatisticAnalysisService.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/IStatisticAnalysisService.java index 0782664..fcce365 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/IStatisticAnalysisService.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/IStatisticAnalysisService.java @@ -1,7 +1,9 @@ package com.intc.invest.service; +import com.intc.invest.domain.dto.AccountsDto; import com.intc.invest.domain.dto.AnalysisDto; import com.intc.invest.domain.vo.AccountCalendarVo; +import com.intc.invest.domain.vo.AccountsVo; import com.intc.invest.domain.vo.CreditReportAnalysisVO; import java.util.List; @@ -53,4 +55,13 @@ public interface IStatisticAnalysisService { public Map getPosStatics(AnalysisDto analysisDto); + /** + * 查询睡眠账户列表 + * + * @param accountsDto 记账账户 + * @return 记账账户集合 + */ + public List selectAccountsList(AccountsDto accountsDto); + + } diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/AccountsServiceImpl.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/AccountsServiceImpl.java index c6b5bb1..9b2c8a2 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/AccountsServiceImpl.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/AccountsServiceImpl.java @@ -12,6 +12,7 @@ import com.intc.invest.service.IAccountsService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.List; /** @@ -90,6 +91,11 @@ public class AccountsServiceImpl implements IAccountsService if(!"null".equals(String.valueOf(accounts.getPayDate()))) { accounts.setPayDateName(accounts.getPayDate()+"号"); } + String daysBetween="无交易记录"; + if(accounts.getRecentDealTime()!=null){ + daysBetween = DateUtils.timeDistance(new Date(),accounts.getRecentDealTime()); + } + accounts.setDuration(daysBetween); } return accountsList; } diff --git a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java index 3043e98..a9888b3 100644 --- a/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java +++ b/intc-modules/intc-invest/src/main/java/com/intc/invest/service/impl/StatisticAnalysisImpl.java @@ -3230,4 +3230,58 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { return map; } + + /** + * 查询记账账户列表 + * + * @param accountsDto 记账账户 + * @return 记账账户 + */ + @Override + public List selectAccountsList(AccountsDto accountsDto) + { + List accountsList=statisticAnalysisMapper.selectAccountsList(accountsDto); + //修改名称加卡号 + for (AccountsVo accounts : accountsList) { + String typeName=""; + switch (accounts.getType()){ + case "1" : + typeName="储蓄账户-"; + break; + case "2" : + typeName="信用卡账户-"; + break; + case "3" : + typeName="借贷账户-"; + break; + case "5" : + typeName="投资账户-"; + break; + case "6" : + typeName="POS机账户-"; + break; + } + if(accounts.getCode()!=null){ + accounts.setNameCodeAvailableLimit(accounts.getName()+"("+ StringUtils.getLastNumberChars(4,accounts.getCode()+")")+"-可用额度("+accounts.getAvailableLimit()+")"); + accounts.setTypeNameCodeAvailableLimit(typeName+accounts.getName()+"("+ StringUtils.getLastNumberChars(4,accounts.getCode()+")")+"-可用额度("+accounts.getAvailableLimit()+")"); + accounts.setNameCode(accounts.getName()+"("+ StringUtils.getLastNumberChars(4,accounts.getCode()+")")); + }else { + accounts.setNameCodeAvailableLimit(accounts.getName()); + accounts.setTypeNameCodeAvailableLimit(typeName+accounts.getName()); + accounts.setNameCode(accounts.getName()); + } + if(!"null".equals(String.valueOf(accounts.getBillDate()))) { + accounts.setBillDateName(accounts.getBillDate()+"号"); + } + if(!"null".equals(String.valueOf(accounts.getPayDate()))) { + accounts.setPayDateName(accounts.getPayDate()+"号"); + } + String daysBetween="无交易记录"; + if(accounts.getRecentDealTime()!=null){ + daysBetween = DateUtils.timeDistance(new Date(),accounts.getRecentDealTime()); + } + accounts.setDuration(daysBetween); + } + return accountsList; + } } diff --git a/intc-modules/intc-invest/src/main/resources/mapper/invest/AccountsMapper.xml b/intc-modules/intc-invest/src/main/resources/mapper/invest/AccountsMapper.xml index f66b30b..8744208 100644 --- a/intc-modules/intc-invest/src/main/resources/mapper/invest/AccountsMapper.xml +++ b/intc-modules/intc-invest/src/main/resources/mapper/invest/AccountsMapper.xml @@ -26,6 +26,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -50,7 +52,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" bcl.pay_date , bcl.credit_limit , bcl.debit_type, - bcl.lend_type + bcl.lend_type, + (select create_time from accounts_deal_record adr where adr.account_id=a.account_id + order by adr.create_time desc + limit 1 + ) as recent_deal_time from accounts a left join bank_card_lend bcl on @@ -68,7 +74,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.state = #{state} and a.status = #{status} and a.account_id = #{accountId} - and bcl.debit_type in('1','2') + and bcl.debit_type in('1','2') ${params.dataScope} diff --git a/intc-modules/intc-invest/src/main/resources/mapper/invest/StatisticAnalysisMapper.xml b/intc-modules/intc-invest/src/main/resources/mapper/invest/StatisticAnalysisMapper.xml index 2c17573..13d59dd 100644 --- a/intc-modules/intc-invest/src/main/resources/mapper/invest/StatisticAnalysisMapper.xml +++ b/intc-modules/intc-invest/src/main/resources/mapper/invest/StatisticAnalysisMapper.xml @@ -798,5 +798,101 @@ t.oneMonthCount desc + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file