Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-api-boot-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lanbaoming
jiedao-api-boot-master
Commits
2bca120b
Commit
2bca120b
authored
Mar 22, 2025
by
332784038@qq.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
应收单业务汇率计算业务修改
parent
a8b0fd68
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
194 additions
and
34 deletions
+194
-34
20250222-currency-rate.sql
sql/v2.2财务/20250222-currency-rate.sql
+15
-3
CurrecyApiImpl.java
.../iocoder/yudao/module/ecw/service/api/CurrecyApiImpl.java
+18
-1
CurrencyRateService.java
.../module/ecw/service/currencyRate/CurrencyRateService.java
+1
-1
ReceivableDO.java
...module/wealth/dal/dataobject/receivable/ReceivableDO.java
+49
-0
ReceivableServiceImpl.java
...dule/wealth/service/receivable/ReceivableServiceImpl.java
+111
-29
No files found.
sql/v2.2财务/20250222-currency-rate.sql
View file @
2bca120b
...
@@ -65,8 +65,21 @@ COMMIT;
...
@@ -65,8 +65,21 @@ COMMIT;
ALTER
TABLE
`ecw_currency_rate`
ADD
COLUMN
`source_currency_code`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_general_ci
NOT
NULL
COMMENT
'原币种代码'
AFTER
`source_id`
;
ALTER
TABLE
`ecw_currency_rate`
ADD
COLUMN
`source_currency_code`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_general_ci
NOT
NULL
COMMENT
'原币种代码'
AFTER
`source_id`
;
ALTER
TABLE
`ecw_currency_rate`
ADD
COLUMN
`target_currency_code`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_general_ci
NOT
NULL
COMMENT
'目标种代码'
AFTER
`target_id`
;
ALTER
TABLE
`ecw_currency_rate`
ADD
COLUMN
`target_currency_code`
varchar
(
255
)
CHARACTER
SET
utf8mb4
COLLATE
utf8mb4_general_ci
NOT
NULL
COMMENT
'目标
币
种代码'
AFTER
`target_id`
;
update
`ecw_currency_rate`
r
left
join
`ecw_currency`
c1
on
r
.
source_id
=
c1
.
id
left
join
`ecw_currency`
c2
on
r
.
target_id
=
c2
.
id
update
`ecw_currency_rate`
r
left
join
`ecw_currency`
c1
on
r
.
source_id
=
c1
.
id
left
join
`ecw_currency`
c2
on
r
.
target_id
=
c2
.
id
set
r
.
`source_currency_code`
=
c1
.
fuhao
,
r
.
`target_currency_code`
=
c2
.
fuhao
;
set
r
.
`source_currency_code`
=
c1
.
fuhao
,
r
.
`target_currency_code`
=
c2
.
fuhao
;
\ No newline at end of file
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`source_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'原币种基准金额'
AFTER
`fee_type`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`source_currency_code`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'原币种代码'
AFTER
`source_amount`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`target_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'支付币种基准金额'
AFTER
`source_currency_code`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`target_currency_code`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'支付币种代码'
AFTER
`target_amount`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_source_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'目的国币种汇兑原币种基准金额'
AFTER
`target_currency_code`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_target_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'目的国币种支付基准金额'
AFTER
`dest_country_source_amount`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_target_currency_code`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'目的国币种代码'
AFTER
`dest_country_target_amount`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_sub_source_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'目的国副币种汇兑原币种基准金额'
AFTER
`dest_country_target_currency_code`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_sub_target_amount`
DECIMAL
(
14
,
4
)
DEFAULT
NULL
COMMENT
'目的国副币种支付基准金额'
AFTER
`dest_country_sub_source_amount`
;
ALTER
TABLE
`ecw_receivable`
ADD
COLUMN
`dest_country_sub_target_currency_code`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'目的国副币种代码'
AFTER
`dest_country_sub_target_amount`
;
yudao-module-ecw/yudao-module-ecw-impl/src/main/java/cn/iocoder/yudao/module/ecw/service/api/CurrecyApiImpl.java
View file @
2bca120b
...
@@ -113,6 +113,23 @@ public class CurrecyApiImpl implements CurrencyApi {
...
@@ -113,6 +113,23 @@ public class CurrecyApiImpl implements CurrencyApi {
@Override
@Override
public
List
<
ExchangeRateRespDTO
>
getAllCurrencyRate
()
{
public
List
<
ExchangeRateRespDTO
>
getAllCurrencyRate
()
{
List
<
CurrencyRateDO
>
currencyRateDOS
=
currencyRateService
.
queryAll
();
List
<
CurrencyRateDO
>
currencyRateDOS
=
currencyRateService
.
queryAll
();
return
CurrencyRateConvert
.
INSTANCE
.
convertList2
(
currencyRateDOS
);
return
convertRateRespList
(
currencyRateDOS
);
}
private
List
<
ExchangeRateRespDTO
>
convertRateRespList
(
List
<
CurrencyRateDO
>
currencyRateDOS
)
{
return
currencyRateDOS
.
stream
().
map
(
this
::
convertRateResp
).
collect
(
Collectors
.
toList
());
}
private
ExchangeRateRespDTO
convertRateResp
(
CurrencyRateDO
currencyRateDO
)
{
ExchangeRateRespDTO
dto
=
new
ExchangeRateRespDTO
();
dto
.
setSourceCurrencyAmount
(
currencyRateDO
.
getSourceAmount
());
dto
.
setSourceCurrencyId
(
currencyRateDO
.
getSourceId
());
dto
.
setSourceCurrencyCode
(
currencyRateDO
.
getSourceCurrencyCode
());
dto
.
setTargetCurrencyAmount
(
currencyRateDO
.
getTargetAmount
());
dto
.
setTargetCurrencyId
(
currencyRateDO
.
getTargetId
());
dto
.
setTargetCurrencyCode
(
currencyRateDO
.
getTargetCurrencyCode
());
dto
.
setExpireDate
(
currencyRateDO
.
getExpiration
());
dto
.
setCurrencyRate
(
currencyRateService
.
rate
(
currencyRateDO
.
getSourceAmount
(),
currencyRateDO
.
getTargetAmount
()));
return
dto
;
}
}
}
}
yudao-module-ecw/yudao-module-ecw-impl/src/main/java/cn/iocoder/yudao/module/ecw/service/currencyRate/CurrencyRateService.java
View file @
2bca120b
...
@@ -68,7 +68,7 @@ public interface CurrencyRateService {
...
@@ -68,7 +68,7 @@ public interface CurrencyRateService {
Date
now
=
new
Date
();
Date
now
=
new
Date
();
if
(
now
.
compareTo
(
entity
.
getExpiration
())
>
0
)
{
if
(
now
.
compareTo
(
entity
.
getExpiration
())
>
0
)
{
throw
exception
(
CURRENCY_RATE_EXPIRED
,
String
.
valueOf
(
sourceId
),
String
.
valueOf
(
targetId
));
throw
exception
(
CURRENCY_RATE_EXPIRED
,
entity
.
getSourceCurrencyCode
(),
entity
.
getTargetCurrencyCode
(
));
}
}
return
entity
;
return
entity
;
...
...
yudao-module-wealth/yudao-module-wealth-core/src/main/java/cn/iocoder/yudao/module/wealth/dal/dataobject/receivable/ReceivableDO.java
View file @
2bca120b
...
@@ -185,4 +185,53 @@ public class ReceivableDO extends BaseDO {
...
@@ -185,4 +185,53 @@ public class ReceivableDO extends BaseDO {
* 额外费用副币种汇率(用于报表,跟费用类型相关)
* 额外费用副币种汇率(用于报表,跟费用类型相关)
*/
*/
private
BigDecimal
destCountrySubRate
;
private
BigDecimal
destCountrySubRate
;
/**
* 原币种基准金额
*/
private
BigDecimal
sourceAmount
;
/**
* 原币种代码
*/
private
String
sourceCurrencyCode
;
/**
* 支付币种基准金额
*/
private
BigDecimal
targetAmount
;
/**
* 支付币种代码
*/
private
String
targetCurrencyCode
;
/**
* 目的国币种汇兑原币种基准金额
*/
private
BigDecimal
destCountrySourceAmount
;
/**
* 目的国币种支付基准金额
*/
private
BigDecimal
destCountryTargetAmount
;
/**
* 目的国币种代码
*/
private
String
destCountryTargetCurrencyCode
;
/**
* 目的国币副种汇兑原币种基准金额
*/
private
BigDecimal
destCountrySubSourceAmount
;
/**
* 目的国副币种支付基准金额
*/
private
BigDecimal
destCountrySubTargetAmount
;
/**
* 目的国副币种代码
*/
private
String
destCountrySubTargetCurrencyCode
;
}
}
yudao-module-wealth/yudao-module-wealth-core/src/main/java/cn/iocoder/yudao/module/wealth/service/receivable/ReceivableServiceImpl.java
View file @
2bca120b
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment