Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
bailuntec-datacenter
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
huluobin
bailuntec-datacenter
Commits
79a2050f
Commit
79a2050f
authored
Dec 03, 2020
by
huluobin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新资产负债表
parent
776eb93e
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
489 additions
and
37 deletions
+489
-37
SyncFeeService.java
...c/main/java/com/bailuntec/job/service/SyncFeeService.java
+33
-22
application-test.yml
...ase/base-sync-fee/src/main/resources/application-test.yml
+2
-8
SyncFeeServiceTest.java
...st/java/com/bailuntec/job/service/SyncFeeServiceTest.java
+40
-0
TestApp.java
...-fee/src/test/java/com/bailuntec/job/service/TestApp.java
+33
-0
application.yml
...ter-base/base-sync-fee/src/test/resources/application.yml
+32
-0
pom.xml
datacenter-finance/finance-balance-sheet/pom.xml
+7
-1
BalanceSheetApp.java
...ce-sheet/src/main/java/com/bailuntec/BalanceSheetApp.java
+1
-2
Swagger2Config.java
...nce-sheet/src/main/java/com/bailuntec/Swagger2Config.java
+59
-0
BalanceSheetModifyController.java
...om/bailuntec/interfaces/BalanceSheetModifyController.java
+38
-0
BalanceSheetJob.java
...heet/src/main/java/com/bailuntec/job/BalanceSheetJob.java
+20
-0
BalanceSheetService.java
...n/java/com/bailuntec/job/service/BalanceSheetService.java
+216
-2
BalanceSheetServiceTest.java
...va/com/bailuntec/job/service/BalanceSheetServiceTest.java
+1
-2
pom.xml
pom.xml
+7
-0
No files found.
datacenter-base/base-sync-fee/src/main/java/com/bailuntec/job/service/SyncFeeService.java
View file @
79a2050f
package
com
.
bailuntec
.
job
.
service
;
import
com.bailuntec.common.BeanUtils
;
import
com.bailuntec.common.ListUtil
;
import
com.bailuntec.cost.api.CostApi
;
import
com.bailuntec.cost.api.dto.CostDto
;
import
com.bailuntec.cost.api.dto.ManageCostDto
;
...
...
@@ -36,6 +37,10 @@ import java.util.List;
@Service
public
class
SyncFeeService
{
public
static
final
String
baseSyncFinanceFee
=
"base-sync-finance-fee"
;
public
static
final
String
baseSyncLogistics
=
"base-sync-logistics"
;
public
static
final
String
baseSyncManageCost
=
"base-sync-manage-cost"
;
public
static
final
String
baseSyncDailyFee
=
"base-sync-daily-fee"
;
@Resource
DcJobConfigMapper
dcJobConfigMapper
;
...
...
@@ -48,31 +53,37 @@ public class SyncFeeService {
@Resource
DcBaseFinanceManagecostMapper
dcBaseFinanceManagecostMapper
;
public
static
final
String
baseSyncFinanceFee
=
"base-sync-finance-fee"
;
public
static
final
String
baseSyncLogistics
=
"base-sync-logistics"
;
public
static
final
String
baseSyncManageCost
=
"base-sync-manage-cost"
;
public
static
final
String
baseSyncDailyFee
=
"base-sync-daily-fee"
;
@Transactional
public
void
syncFinanceFee
()
{
DcJobConfig
dcJobConfig
=
dcJobConfigMapper
.
selectByName
(
baseSyncFinanceFee
);
CostResult
<
List
<
CostDto
>>
result
=
costApi
.
getCostList
(
dcJobConfig
.
getStartTimeStr
(),
dcJobConfig
.
getEndTimeStr
());
result
.
getData
().
forEach
(
costDto
->
{
DcBaseFinanceFee
dcBaseFinanceFee
=
new
DcBaseFinanceFee
();
BeanUtils
.
copyProperties
(
costDto
,
dcBaseFinanceFee
,
"id"
);
dcBaseFinanceFee
.
setCreateTime
(
LocalDateTime
.
ofInstant
(
costDto
.
getCreateTime
().
toInstant
(),
ZoneId
.
systemDefault
()));
//更新
int
update
=
dcBaseFinanceFeeMapper
.
update
(
dcBaseFinanceFee
,
new
LambdaQueryWrapper
<
DcBaseFinanceFee
>()
.
eq
(
DcBaseFinanceFee:
:
getCostNo
,
dcBaseFinanceFee
.
getCostNo
()));
//插入
if
(
update
==
0
)
{
dcBaseFinanceFeeMapper
.
insert
(
dcBaseFinanceFee
);
Integer
pageNum
=
1
;
Integer
pageSize
=
100
;
for
(;
;
)
{
CostResult
<
List
<
CostDto
>>
result
=
costApi
.
getCostList
(
dcJobConfig
.
getStartTimeStr
(),
dcJobConfig
.
getEndTimeStr
(),
pageNum
,
pageSize
);
if
(
ListUtil
.
isEmpty
(
result
.
getData
()))
{
break
;
}
log
.
info
(
"同步一条费用单,costNo:{}"
,
costDto
.
getCostNo
());
});
result
.
getData
().
forEach
(
costDto
->
{
DcBaseFinanceFee
dcBaseFinanceFee
=
new
DcBaseFinanceFee
();
BeanUtils
.
copyProperties
(
costDto
,
dcBaseFinanceFee
,
"id"
);
dcBaseFinanceFee
.
setCreateTime
(
LocalDateTime
.
ofInstant
(
costDto
.
getCreateTime
().
toInstant
(),
ZoneId
.
systemDefault
()));
//更新
int
update
=
dcBaseFinanceFeeMapper
.
update
(
dcBaseFinanceFee
,
new
LambdaQueryWrapper
<
DcBaseFinanceFee
>()
.
eq
(
DcBaseFinanceFee:
:
getCostNo
,
dcBaseFinanceFee
.
getCostNo
()));
//插入
if
(
update
==
0
)
{
dcBaseFinanceFeeMapper
.
insert
(
dcBaseFinanceFee
);
}
log
.
info
(
"同步一条费用单,costNo:{}"
,
costDto
.
getCostNo
());
});
pageNum
++;
}
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
}
...
...
@@ -146,8 +157,8 @@ public class SyncFeeService {
public
void
syncDailyFee
()
{
DcJobConfig
dcJobConfig
=
dcJobConfigMapper
.
selectByName
(
baseSyncDailyFee
);
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
dcBaseFinanceFeeMapper
.
deleteDailyFee
(
date
.
minusDays
(
1L
)
);
dcBaseFinanceFeeMapper
.
insertDailyFee
(
date
.
minusDays
(
1L
)
);
dcBaseFinanceFeeMapper
.
deleteDailyFee
(
date
);
dcBaseFinanceFeeMapper
.
insertDailyFee
(
date
);
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
}
...
...
datacenter-base/base-sync-fee/src/main/resources/application-test.yml
View file @
79a2050f
...
...
@@ -10,14 +10,8 @@ spring:
driver-class-name
:
com.mysql.jdbc.Driver
main
:
allow-bean-definition-overriding
:
true
#mybatis plus 配置
mybatis-plus
:
mapper-locations
:
-
classpath*:com/bailuntec/mapper/*.xml
# configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#
profiles
:
active
:
test
feign
:
...
...
datacenter-base/base-sync-fee/src/test/java/com/bailuntec/job/service/SyncFeeServiceTest.java
0 → 100644
View file @
79a2050f
package
com
.
bailuntec
.
job
.
service
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
org.springframework.test.context.testng.AbstractTestNGSpringContextTests
;
import
javax.annotation.Resource
;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2020/12/1 3:27 下午
*/
@SpringBootTest
(
classes
=
TestApp
.
class
)
class
SyncFeeServiceTest
extends
AbstractTestNGSpringContextTests
{
@Resource
SyncFeeService
syncFeeService
;
@Test
void
syncFinanceFee
()
{
syncFeeService
.
syncFinanceFee
();
}
@Test
void
syncLogistics
()
{
}
@Test
void
syncManageCost
()
{
}
@Test
void
syncDailyFee
()
{
}
}
datacenter-base/base-sync-fee/src/test/java/com/bailuntec/job/service/TestApp.java
0 → 100644
View file @
79a2050f
package
com
.
bailuntec
.
job
.
service
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringBootVersion
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
org.springframework.core.SpringVersion
;
import
org.springframework.test.context.ActiveProfiles
;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2020/12/1 3:28 下午
*/
@EnableFeignClients
(
basePackages
=
{
"com.bailuntec.api"
,
"com.bailuntec.*.api"
})
@Slf4j
@SpringBootApplication
(
scanBasePackages
=
"com.bailuntec"
)
@ActiveProfiles
(
"test"
)
public
class
TestApp
{
public
static
void
main
(
String
[]
args
)
{
String
version
=
SpringVersion
.
getVersion
();
String
version1
=
SpringBootVersion
.
getVersion
();
log
.
info
(
"SpringVersion {}"
,
version
);
log
.
info
(
"SpringBootVersion {}"
,
version1
);
SpringApplication
.
run
(
TestApp
.
class
,
args
);
}
}
datacenter-base/base-sync-fee/src/test/resources/application.yml
0 → 100644
View file @
79a2050f
spring
:
# 服务名称
application
:
name
:
base-sync-fee
# 数据配置
datasource
:
url
:
jdbc:mysql://gz-cdb-kp7s5i79.sql.tencentcdb.com:61691/bailun_datacenter?serverTimezone=GMT%2B8&characterEncoding=utf-8
username
:
root
password
:
'
#7kfnymAM$Y9-Ntf'
driver-class-name
:
com.mysql.jdbc.Driver
main
:
allow-bean-definition-overriding
:
true
profiles
:
active
:
test
#mybatis plus 配置
mybatis-plus
:
mapper-locations
:
-
classpath*:com/bailuntec/mapper/*.xml
# configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#
feign
:
hystrix
:
enabled
:
false
client
:
config
:
default
:
connectTimeout
:
30000
readTimeout
:
30000
datacenter-finance/finance-balance-sheet/pom.xml
View file @
79a2050f
...
...
@@ -20,6 +20,12 @@
<skipTests>
true
</skipTests>
</properties>
<dependencies>
<dependency>
<groupId>
com.github.xiaoymin
</groupId>
<artifactId>
swagger-bootstrap-ui
</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
...
...
@@ -28,7 +34,7 @@
<artifactId>
spring-boot-maven-plugin
</artifactId>
<version>
2.3.3.RELEASE
</version>
<configuration>
<mainClass>
com.bailuntec.
job.
BalanceSheetApp
</mainClass>
<mainClass>
com.bailuntec.BalanceSheetApp
</mainClass>
</configuration>
<executions>
<execution>
...
...
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/
job/
BalanceSheetApp.java
→
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/BalanceSheetApp.java
View file @
79a2050f
package
com
.
bailuntec
.
job
;
package
com
.
bailuntec
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
...
...
@@ -16,7 +16,6 @@ import org.springframework.scheduling.annotation.EnableScheduling;
*/
@SpringBootApplication
@EnableScheduling
@ComponentScan
(
"com.bailuntec"
)
@EnableFeignClients
(
basePackages
=
{
"com.bailuntec.api"
,
"com.bailuntec.*.api"
})
public
class
BalanceSheetApp
{
...
...
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/Swagger2Config.java
0 → 100644
View file @
79a2050f
package
com
.
bailuntec
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
springfox.documentation.builders.ApiInfoBuilder
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
/**
* <p>
* Swagger2配置类
* </p>
*
* @author robbendev
*/
@Configuration
@EnableSwagger2
public
class
Swagger2Config
{
/**
* 创建API应用
* apiInfo() 增加API相关信息
* 通过select()函数返回一个ApiSelectorBuilder实例,用来控制哪些接口暴露给Swagger来展现,
* 本例采用指定扫描的包路径来定义指定要建立API的目录。
*
* @return
*/
@Bean
public
Docket
createRestApi
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
apiInfo
(
apiInfo
())
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.bailuntec"
))
.
paths
(
PathSelectors
.
any
())
.
build
()
;
}
/**
* 创建该API的基本信息(这些基本信息会展现在文档页面中)
* 访问地址:http://项目实际地址/swagger-ui.html
*
* @return
*/
private
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
()
.
title
(
"资产负债表接口文档"
)
.
description
(
""
)
.
version
(
"1.0"
)
.
build
();
}
}
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/interfaces/BalanceSheetModifyController.java
0 → 100644
View file @
79a2050f
package
com
.
bailuntec
.
interfaces
;
import
com.bailuntec.application.IDcBalanceSheetNewModifyService
;
import
com.bailuntec.common.base.BaseResult
;
import
com.bailuntec.domain.DcBalanceSheetNewModify
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2020/12/3 1:41 下午
*/
@Api
(
tags
=
"资产负债表接口"
)
@RestController
@RequestMapping
(
"/balanceSheetModify"
)
public
class
BalanceSheetModifyController
{
@Resource
IDcBalanceSheetNewModifyService
dcBalanceSheetNewModifyService
;
@ApiOperation
(
"资产负债表录入"
)
@PostMapping
(
"/record"
)
public
BaseResult
<
Void
>
record
(
@RequestBody
DcBalanceSheetNewModify
dcBalanceSheetNewModify
)
{
dcBalanceSheetNewModifyService
.
record
(
dcBalanceSheetNewModify
);
return
BaseResult
.
success
();
}
}
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/job/BalanceSheetJob.java
View file @
79a2050f
...
...
@@ -120,5 +120,25 @@ public class BalanceSheetJob {
}
}
/**
* 每天 生成新资产负债结果表
* companyValue 0
* companyName 百伦供应链
* <p>
* {@link}
* </p>
* 数据来源
*/
@Scheduled
(
cron
=
"0/1 * * * * ?"
)
public
void
generateBalanceSheetNewResult
()
{
try
{
log
.
info
(
"每分钟 生成新资产负债结果表 开始"
);
balanceSheetService
.
generateBalanceSheetNewResult
();
log
.
info
(
"每分钟 生成新资产负债结果表 结束"
);
}
catch
(
Exception
ex
)
{
log
.
error
(
"每分钟 生成新资产负债结果表 异常:"
,
ex
);
}
}
}
datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/job/service/BalanceSheetService.java
View file @
79a2050f
...
...
@@ -45,6 +45,7 @@ public class BalanceSheetService {
private
static
final
String
financeSyncCost
=
"finance-sync-cost"
;
private
static
final
String
financeSyncBuy
=
"finance-sync-buy"
;
private
static
final
String
financeGenerateBalanceSheet
=
"finance-generate-balance-sheet"
;
private
static
final
String
financeGenerateBalanceSheetNewResult
=
"finance-generate-balance-sheet-new-result"
;
private
static
final
String
financeSyncPayPal
=
"finance-sync-pay-pal"
;
@Resource
...
...
@@ -379,6 +380,12 @@ public class BalanceSheetService {
DcSemiDailyTransferMapper
dcSemiDailyTransferMapper
;
@Resource
DcExchangeRateMapper
dcExchangeRateMapper
;
@Resource
DcBalanceSheetNewMapper
dcBalanceSheetNewMapper
;
@Resource
DcBalanceSheetNewResultMapper
dcBalanceSheetNewResultMapper
;
@Resource
IDcBalanceSheetNewService
dcBalanceSheetNewService
;
/**
* 每天生成资产负债表
...
...
@@ -446,6 +453,11 @@ public class BalanceSheetService {
.
eq
(
DcBalanceSheet:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheet:
:
getStatisticalTime
,
dcJobConfig
.
getStartTime
().
toLocalDate
()));
DcBalanceSheetNew
dcBalanceSheetNew
=
dcBalanceSheetNewMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheetNew
>()
.
eq
(
DcBalanceSheetNew:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheetNew:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheetNew:
:
getStatisticalTime
,
dcJobConfig
.
getStartTime
().
toLocalDate
()));
if
(
dcBalanceSheet
==
null
)
{
dcBalanceSheet
=
new
DcBalanceSheet
();
dcBalanceSheet
.
setCompanyValue
(
companyValue
);
...
...
@@ -453,37 +465,52 @@ public class BalanceSheetService {
dcBalanceSheet
.
setStatisticalTime
(
dcJobConfig
.
getStartTime
().
toLocalDate
());
}
if
(
dcBalanceSheetNew
==
null
)
{
dcBalanceSheetNew
=
new
DcBalanceSheetNew
();
dcBalanceSheetNew
.
setCompanyValue
(
companyValue
);
dcBalanceSheetNew
.
setCompanyName
(
companyName
);
dcBalanceSheetNew
.
setStatisticalTime
(
dcJobConfig
.
getStartTime
().
toLocalDate
());
}
//银行账户余额汇总
BigDecimal
bankAccountBalanceSum
=
dcBankAccountBalanceMapper
.
getBalanceSum
(
date
);
dcBalanceSheet
.
setBankAccountBalance
(
bankAccountBalanceSum
);
dcBalanceSheetNew
.
setBankAccountBalance
(
bankAccountBalanceSum
);
// 提现在途金额汇总
BigDecimal
withdrawOnWaySum
=
dcWithdrawOnWayMapper
.
getWithdrawOnWaySum
(
date
);
dcBalanceSheet
.
setWithdrawAmount
(
withdrawOnWaySum
);
dcBalanceSheetNew
.
setWithdrawAmount
(
withdrawOnWaySum
);
// 第三方平台余额
BigDecimal
platformBalanceSum
=
dcPlatformBalanceMapper
.
getPlatformBalanceSum
(
date
);
dcBalanceSheet
.
setPlatformBalance
(
platformBalanceSum
);
dcBalanceSheetNew
.
setPlatformBalance
(
platformBalanceSum
);
// 货币资金 货币资金 = 银行余额 + 提现在途 + 第三方平台余额
dcBalanceSheet
.
setMonetaryFund
(
bankAccountBalanceSum
.
add
(
withdrawOnWaySum
).
add
(
platformBalanceSum
));
dcBalanceSheetNew
.
setMonetaryFund
(
bankAccountBalanceSum
.
add
(
withdrawOnWaySum
).
add
(
platformBalanceSum
));
// 短期借款
BigDecimal
shortBorrowBalanceSum
=
dcShortTermBorrowMapper
.
getShortTermBorrowBalanceSum
(
date
);
dcBalanceSheet
.
setShortTermBorrow
(
shortBorrowBalanceSum
);
dcBalanceSheetNew
.
setShortTermBorrow
(
shortBorrowBalanceSum
);
//借支金额(借支单未还金额)
BigDecimal
amountBorrowedSum
=
dcBalanceSheetMapper
.
getAmountBorrowed
(
date
);
dcBalanceSheet
.
setAmountBorrowed
(
amountBorrowedSum
);
dcBalanceSheetNew
.
setAmountBorrowed
(
amountBorrowedSum
);
// 其他应收款
BigDecimal
otherAccountsReceivableImport
=
dcBalanceSheetMapper
.
getOtherAccountsReceivableImport
(
date
);
dcBalanceSheet
.
setOtherAccountsReceivable
(
amountBorrowedSum
.
add
(
otherAccountsReceivableImport
));
dcBalanceSheetNew
.
setOtherAccountsReceivable
(
amountBorrowedSum
.
add
(
otherAccountsReceivableImport
));
//固定资产
BigDecimal
fixedAssetsSum
=
dcFixedAssetsDetailMapper
.
getFixedAssetsSum
(
date
);
BigDecimal
fixedAssetsImport
=
dcBalanceSheetMapper
.
getFixedAssetsImport
(
date
);
dcBalanceSheet
.
setFixedAssets
(
fixedAssetsSum
.
add
(
fixedAssetsImport
));
dcBalanceSheetNew
.
setFixedAssets
(
fixedAssetsSum
.
add
(
fixedAssetsImport
));
// // 货品库存
// dcInventoryBalanceMapper.deleteInventoryBalance(date);
...
...
@@ -495,90 +522,277 @@ public class BalanceSheetService {
// FBA在库金额
BigDecimal
fbaInventoryAmountSum
=
dcInventoryBalanceMapper
.
getFbaInventoryAmountSum
(
date
);
dcBalanceSheet
.
setFbaInventoryAmount
(
fbaInventoryAmountSum
);
dcBalanceSheetNew
.
setFbaInventoryAmount
(
fbaInventoryAmountSum
);
// 非FBA在库金额(不包含耗材仓)
BigDecimal
notFbaInventoryAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaInventoryAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaInventoryAmount
(
notFbaInventoryAmountSum
);
dcBalanceSheetNew
.
setNotFbaInventoryAmount
(
notFbaInventoryAmountSum
);
// 非FBA在库金额(耗材仓)
BigDecimal
notFbaHcInventoryAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaHcInventoryAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaHcInventoryAmount
(
notFbaHcInventoryAmountSum
);
dcBalanceSheetNew
.
setNotFbaHcInventoryAmount
(
notFbaHcInventoryAmountSum
);
// FBA在途
BigDecimal
fbaTransferAmountSum
=
dcInventoryBalanceMapper
.
getFbaTransferAmountSum
(
date
);
dcBalanceSheet
.
setFbaTransferAmount
(
fbaTransferAmountSum
);
dcBalanceSheetNew
.
setFbaTransferAmount
(
fbaTransferAmountSum
);
// 非FBA在途金额(调拨+采购)
BigDecimal
notFbaTransferAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaTransferAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaTransferAmount
(
notFbaTransferAmountSum
);
dcBalanceSheetNew
.
setNotFbaTransferAmount
(
notFbaTransferAmountSum
);
// FBA调拨在途金额(调拨不包含计划)
BigDecimal
fbaTransferAllotAmountSum
=
dcInventoryBalanceMapper
.
getFbaTransferAllotAmountSum
(
date
);
dcBalanceSheet
.
setFbaTransferAllotAmount
(
fbaTransferAllotAmountSum
);
dcBalanceSheetNew
.
setFbaTransferAllotAmount
(
fbaTransferAllotAmountSum
);
// 非FBA调拨在途金额(调拨不包含计划)
BigDecimal
notFbaTransferAllotAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaTransferAllotAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaTransferAllotAmount
(
notFbaTransferAllotAmountSum
);
dcBalanceSheetNew
.
setNotFbaTransferAllotAmount
(
notFbaTransferAllotAmountSum
);
// FBA调拨计划在途金额
BigDecimal
fbaTransferPlanAmountSum
=
dcInventoryBalanceMapper
.
getFbaTransferPlanAmountSum
(
date
);
dcBalanceSheet
.
setFbaTransferPlanAmount
(
fbaTransferPlanAmountSum
);
dcBalanceSheetNew
.
setFbaTransferPlanAmount
(
fbaTransferPlanAmountSum
);
// 非FBA调拨计划在途金额
BigDecimal
notFbaTransferPlanAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaTransferPlanAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaTransferPlanAmount
(
notFbaTransferPlanAmountSum
);
dcBalanceSheetNew
.
setNotFbaTransferPlanAmount
(
notFbaTransferPlanAmountSum
);
// FBA采购在途金额
BigDecimal
fbaPurchaseAmountSum
=
dcInventoryBalanceMapper
.
getFbaPurchaseAmountSum
(
date
);
if
(
fbaPurchaseAmountSum
==
null
)
fbaPurchaseAmountSum
=
BigDecimal
.
ZERO
;
dcBalanceSheet
.
setFbaPurchaseAmount
(
fbaPurchaseAmountSum
);
dcBalanceSheetNew
.
setFbaPurchaseAmount
(
fbaPurchaseAmountSum
);
// 非FBA采购在途金额
BigDecimal
notFbaPurchaseAmountSum
=
dcInventoryBalanceMapper
.
getNotFbaPurchaseAmountSum
(
date
);
dcBalanceSheet
.
setNotFbaPurchaseAmount
(
notFbaPurchaseAmountSum
);
dcBalanceSheetNew
.
setNotFbaPurchaseAmount
(
notFbaPurchaseAmountSum
);
// 自产采购在途金额
BigDecimal
purchaseProAmountSum
=
dcInventoryBalanceMapper
.
getPurchaseProAmount
(
date
);
dcBalanceSheet
.
setPurchaseProAmount
(
purchaseProAmountSum
);
dcBalanceSheetNew
.
setPurchaseProAmount
(
purchaseProAmountSum
);
// 半成品在库金额
BigDecimal
semiInventoryAmountSum
=
dcSemiDailyStockMapper
.
getSemiDailyStockSum
(
date
);
dcBalanceSheet
.
setSemiInventoryAmount
(
semiInventoryAmountSum
);
dcBalanceSheetNew
.
setSemiInventoryAmount
(
semiInventoryAmountSum
);
//半成品在库金额=百伦
BigDecimal
semiBailunInventoryAmountSum
=
dcSemiDailyStockMapper
.
getSemiBailunDailyStockSum
(
date
);
dcBalanceSheet
.
setSemiBailunInventoryAmount
(
semiBailunInventoryAmountSum
);
dcBalanceSheetNew
.
setSemiBailunInventoryAmount
(
semiBailunInventoryAmountSum
);
//半成品在库金额-哈尼曼
BigDecimal
semiHaNiInventoryAmountSum
=
dcSemiDailyStockMapper
.
getSemiHaNiDailyStockSum
(
date
);
dcBalanceSheet
.
setSemiHaniInventoryAmount
(
semiHaNiInventoryAmountSum
);
dcBalanceSheetNew
.
setSemiHaniInventoryAmount
(
semiHaNiInventoryAmountSum
);
//半成品生产在库金额
BigDecimal
semiProdInventoryAmountSum
=
dcSemiDailyStockMapper
.
getSemiProdInventoryAmountSum
(
date
);
dcBalanceSheet
.
setSemiProdInventoryAmount
(
semiProdInventoryAmountSum
);
dcBalanceSheetNew
.
setSemiProdInventoryAmount
(
semiProdInventoryAmountSum
);
// 半成品在途金额 恢复,不汇总进去存货里面
BigDecimal
semiTransferAmountSum
=
dcSemiDailyTransferMapper
.
getSemiDailyTransferSum
(
date
);
dcBalanceSheet
.
setSemiTransferAmount
(
semiTransferAmountSum
);
dcBalanceSheetNew
.
setSemiTransferAmount
(
semiTransferAmountSum
);
//半成品在途金额=百伦
BigDecimal
semiBailunTransferAmountSum
=
dcSemiDailyTransferMapper
.
getSemiBailunDailyTransferSum
(
date
);
dcBalanceSheet
.
setSemiBailunTransferAmount
(
semiBailunTransferAmountSum
);
dcBalanceSheetNew
.
setSemiBailunTransferAmount
(
semiBailunTransferAmountSum
);
//半成品在途金额=哈尼曼
BigDecimal
semiHaNiTransferAmountSum
=
dcSemiDailyTransferMapper
.
getSemiHaNiDailyTransferSum
(
date
);
dcBalanceSheet
.
setSemiHaniTransferAmount
(
semiHaNiTransferAmountSum
);
dcBalanceSheetNew
.
setSemiHaniTransferAmount
(
semiHaNiTransferAmountSum
);
// 存货 金额
FBA在库金额+非FBA在库金额(不包含耗材仓)+FBA调拨在途金额(不包含调拨计划)+非FBA调拨在途金额(不包含调拨计划)+半成品在库金额+半成品生产在库金额+自产采购在途
// 存货 金额 FBA在库金额+非FBA在库金额(不包含耗材仓)+FBA调拨在途金额(不包含调拨计划)+非FBA调拨在途金额(不包含调拨计划)+半成品在库金额+半成品生产在库金额+自产采购在途
BigDecimal
inventoryBalanceSum
=
fbaInventoryAmountSum
.
add
(
notFbaInventoryAmountSum
).
add
(
fbaTransferAllotAmountSum
).
add
(
notFbaTransferAllotAmountSum
).
add
(
semiBailunInventoryAmountSum
).
add
(
semiProdInventoryAmountSum
).
add
(
purchaseProAmountSum
);
dcBalanceSheet
.
setInventoryAmount
(
inventoryBalanceSum
);
dcBalanceSheetNew
.
setInventoryAmount
(
inventoryBalanceSum
);
dcBalanceSheetService
.
saveOrUpdate
(
dcBalanceSheet
);
dcBalanceSheetNewService
.
saveOrUpdate
(
dcBalanceSheetNew
);
//更新任务时间
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
}
@Resource
IDcBalanceSheetNewResultService
dcBalanceSheetNewResultService
;
@Resource
DcBalanceSheetNewModifyMapper
dcBalanceSheetNewModifyMapper
;
public
void
generateBalanceSheetNewResult
()
{
DcJobConfig
dcJobConfig
=
dcJobConfigMapper
.
selectByName
(
financeGenerateBalanceSheetNewResult
);
Integer
companyValue
=
0
;
String
companyName
=
"百伦供应链"
;
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
DcBalanceSheetNewResult
dcBalanceSheetNewResult
=
dcBalanceSheetNewResultMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheetNewResult
>()
.
eq
(
DcBalanceSheetNewResult:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheetNewResult:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheetNewResult:
:
getStatisticalTime
,
dcJobConfig
.
getStartTime
().
toLocalDate
()));
DcBalanceSheetNewModify
dcBalanceSheetNewModify
=
dcBalanceSheetNewModifyMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheetNewModify
>()
.
eq
(
DcBalanceSheetNewModify:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheetNewModify:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheetNewModify:
:
getStatisticalTime
,
dcJobConfig
.
getStartTime
().
toLocalDate
()));
DcBalanceSheetNew
dcBalanceSheetNew
=
dcBalanceSheetNewMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheetNew
>()
.
eq
(
DcBalanceSheetNew:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheetNew:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheetNew:
:
getStatisticalTime
,
dcJobConfig
.
getStartTime
().
toLocalDate
()));
if
(
dcBalanceSheetNewResult
==
null
)
{
dcBalanceSheetNewResult
=
new
DcBalanceSheetNewResult
();
dcBalanceSheetNewResult
.
setCompanyValue
(
companyValue
);
dcBalanceSheetNewResult
.
setCompanyName
(
companyName
);
dcBalanceSheetNewResult
.
setStatisticalTime
(
dcJobConfig
.
getStartTime
().
toLocalDate
());
}
if
(
dcBalanceSheetNewModify
==
null
)
{
dcBalanceSheetNewModify
=
new
DcBalanceSheetNewModify
();
}
if
(
dcBalanceSheetNew
==
null
)
{
dcBalanceSheetNew
=
new
DcBalanceSheetNew
();
}
//银行账户余额汇总
dcBalanceSheetNewResult
.
setBankAccountBalance
(
dcBalanceSheetNew
.
getBankAccountBalance
()
.
add
(
dcBalanceSheetNewModify
.
getBankAccountBalance
()));
// 提现在途金额汇总
dcBalanceSheetNewResult
.
setWithdrawAmount
(
dcBalanceSheetNew
.
getWithdrawAmount
()
.
add
(
dcBalanceSheetNewModify
.
getWithdrawAmount
()));
// 第三方平台余额
dcBalanceSheetNewResult
.
setPlatformBalance
(
dcBalanceSheetNew
.
getPlatformBalance
()
.
add
(
dcBalanceSheetNewModify
.
getPlatformBalance
()));
// 货币资金 货币资金 = 银行余额 + 提现在途 + 第三方平台余额
dcBalanceSheetNewResult
.
setMonetaryFund
(
dcBalanceSheetNew
.
getMonetaryFund
()
.
add
(
dcBalanceSheetNewModify
.
getMonetaryFund
()));
// 短期借款
dcBalanceSheetNewResult
.
setShortTermBorrow
(
dcBalanceSheetNew
.
getShortTermBorrow
()
.
add
(
dcBalanceSheetNewModify
.
getShortTermBorrow
()));
//借支金额(借支单未还金额)
dcBalanceSheetNewResult
.
setAmountBorrowed
(
dcBalanceSheetNew
.
getAmountBorrowed
()
.
add
(
dcBalanceSheetNewModify
.
getAmountBorrowed
()));
// 其他应收款
dcBalanceSheetNewResult
.
setOtherAccountsReceivable
(
dcBalanceSheetNew
.
getOtherAccountsReceivable
()
.
add
(
dcBalanceSheetNewModify
.
getOtherAccountsReceivable
()));
//固定资产
dcBalanceSheetNewResult
.
setFixedAssets
(
dcBalanceSheetNew
.
getFixedAssets
()
.
add
(
dcBalanceSheetNewModify
.
getFixedAssets
()));
// // 货品库存
// dcInventoryBalanceMapper.deleteInventoryBalance(date);
// dcInventoryBalanceMapper.insertInventoryBalance(date);
//
// // 货品调拨在途
// dcInventoryBalanceMapper.insertTransferInventoryBalance(date);
// FBA在库金额
dcBalanceSheetNewResult
.
setFbaInventoryAmount
(
dcBalanceSheetNew
.
getFbaInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getFbaInventoryAmount
()));
// 非FBA在库金额(不包含耗材仓)
dcBalanceSheetNewResult
.
setNotFbaInventoryAmount
(
dcBalanceSheetNew
.
getNotFbaInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaHcInventoryAmount
()));
// 非FBA在库金额(耗材仓)
dcBalanceSheetNewResult
.
setNotFbaHcInventoryAmount
(
dcBalanceSheetNew
.
getNotFbaHcInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaHcInventoryAmount
()));
// FBA在途
dcBalanceSheetNewResult
.
setFbaTransferAmount
(
dcBalanceSheetNew
.
getFbaTransferAmount
()
.
add
(
dcBalanceSheetNewModify
.
getFbaTransferAmount
()));
// 非FBA在途金额(调拨+采购)
dcBalanceSheetNewResult
.
setNotFbaTransferAmount
(
dcBalanceSheetNew
.
getNotFbaTransferAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaTransferAmount
()));
// FBA调拨在途金额(调拨不包含计划)
dcBalanceSheetNewResult
.
setFbaTransferAllotAmount
(
dcBalanceSheetNew
.
getFbaTransferAllotAmount
()
.
add
(
dcBalanceSheetNewModify
.
getFbaTransferAllotAmount
()));
// 非FBA调拨在途金额(调拨不包含计划)
dcBalanceSheetNewResult
.
setNotFbaTransferAllotAmount
(
dcBalanceSheetNew
.
getNotFbaTransferAllotAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaTransferAllotAmount
()));
// FBA调拨计划在途金额
dcBalanceSheetNewResult
.
setFbaTransferPlanAmount
(
dcBalanceSheetNew
.
getFbaTransferPlanAmount
()
.
add
(
dcBalanceSheetNewModify
.
getFbaTransferPlanAmount
()));
// 非FBA调拨计划在途金额
dcBalanceSheetNewResult
.
setNotFbaTransferPlanAmount
(
dcBalanceSheetNew
.
getNotFbaTransferPlanAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaTransferPlanAmount
()));
// FBA采购在途金额
dcBalanceSheetNewResult
.
setFbaPurchaseAmount
(
dcBalanceSheetNew
.
getFbaPurchaseAmount
()
.
add
(
dcBalanceSheetNewModify
.
getFbaPurchaseAmount
()));
// 非FBA采购在途金额
dcBalanceSheetNewResult
.
setNotFbaPurchaseAmount
(
dcBalanceSheetNew
.
getNotFbaPurchaseAmount
()
.
add
(
dcBalanceSheetNewModify
.
getNotFbaPurchaseAmount
()));
// 自产采购在途金额
dcBalanceSheetNewResult
.
setPurchaseProAmount
(
dcBalanceSheetNew
.
getPurchaseProAmount
()
.
add
(
dcBalanceSheetNewModify
.
getPurchaseProAmount
()));
// 半成品在库金额
dcBalanceSheetNewResult
.
setSemiInventoryAmount
(
dcBalanceSheetNew
.
getSemiInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiInventoryAmount
()));
//半成品在库金额=百伦
dcBalanceSheetNewResult
.
setSemiBailunInventoryAmount
(
dcBalanceSheetNew
.
getSemiBailunInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiBailunInventoryAmount
()));
//半成品在库金额-哈尼曼
dcBalanceSheetNewResult
.
setSemiHaniInventoryAmount
(
dcBalanceSheetNew
.
getSemiHaniInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiHaniInventoryAmount
()));
//半成品生产在库金额
dcBalanceSheetNewResult
.
setSemiProdInventoryAmount
(
dcBalanceSheetNew
.
getSemiProdInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiProdInventoryAmount
()));
// 半成品在途金额 恢复,不汇总进去存货里面
dcBalanceSheetNewResult
.
setSemiTransferAmount
(
dcBalanceSheetNew
.
getSemiTransferAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiTransferAmount
()));
//半成品在途金额=百伦
dcBalanceSheetNewResult
.
setSemiBailunTransferAmount
(
dcBalanceSheetNew
.
getSemiBailunTransferAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiBailunTransferAmount
()));
//半成品在途金额=哈尼曼
dcBalanceSheetNewResult
.
setSemiHaniTransferAmount
(
dcBalanceSheetNew
.
getSemiHaniTransferAmount
()
.
add
(
dcBalanceSheetNewModify
.
getSemiHaniTransferAmount
()));
// 存货 金额 FBA在库金额+非FBA在库金额(不包含耗材仓)+FBA调拨在途金额(不包含调拨计划)+非FBA调拨在途金额(不包含调拨计划)+半成品在库金额+半成品生产在库金额+自产采购在途
dcBalanceSheetNewResult
.
setInventoryAmount
(
dcBalanceSheetNew
.
getInventoryAmount
()
.
add
(
dcBalanceSheetNewModify
.
getInventoryAmount
()));
dcBalanceSheetNewResultService
.
saveOrUpdate
(
dcBalanceSheetNewResult
);
//更新任务时间
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
}
}
datacenter-finance/finance-balance-sheet/src/test/java/com/bailuntec/job/service/BalanceSheetServiceTest.java
View file @
79a2050f
package
com
.
bailuntec
.
job
.
service
;
import
com.bailuntec.
job.
BalanceSheetApp
;
import
com.bailuntec.BalanceSheetApp
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -8,7 +8,6 @@ import org.springframework.boot.test.context.SpringBootTest;
import
org.springframework.test.context.ActiveProfiles
;
import
org.springframework.test.context.junit4.SpringRunner
;
import
javax.annotation.Resource
;
import
java.text.ParseException
;
import
java.time.LocalDate
;
...
...
pom.xml
View file @
79a2050f
...
...
@@ -29,6 +29,13 @@
<artifactId>
bailuntec-datacenter
</artifactId>
</dependency>
<dependency>
<groupId>
org.testng
</groupId>
<artifactId>
testng
</artifactId>
<version>
7.1.0
</version>
<scope>
test
</scope>
</dependency>
</dependencies>
</project>
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