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
f7a7cbca
Commit
f7a7cbca
authored
Mar 31, 2021
by
huluobin
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
eacda37b
4a6a88da
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
401 additions
and
75 deletions
+401
-75
DcBaseFinanceAmazonAdProductServiceImpl.java
...ication/impl/DcBaseFinanceAmazonAdProductServiceImpl.java
+0
-26
JobAmazonAdLogServiceImpl.java
...bailuntec/application/impl/JobAmazonAdLogServiceImpl.java
+0
-22
DcSemiStockLog.java
...in/src/main/java/com/bailuntec/domain/DcSemiStockLog.java
+83
-0
DcSemiSupplierOfferLog.java
...ain/java/com/bailuntec/domain/DcSemiSupplierOfferLog.java
+65
-0
DcSemiDailyStockMapper.java
...iluntec/infrastructure/mapper/DcSemiDailyStockMapper.java
+8
-0
DcSemiStockLogMapper.java
...bailuntec/infrastructure/mapper/DcSemiStockLogMapper.java
+18
-0
DcSemiSupplierOfferLogMapper.java
...c/infrastructure/mapper/DcSemiSupplierOfferLogMapper.java
+26
-0
DcSemiStockLogMapper.xml
...n/resources/com/bailuntec/mapper/DcSemiStockLogMapper.xml
+80
-0
EbayFinanceWriter.java
...ay/src/main/java/com/bailuntec/job/EbayFinanceWriter.java
+20
-1
BalanceSheetJob.java
...heet/src/main/java/com/bailuntec/job/BalanceSheetJob.java
+9
-9
BalanceSheetService.java
...n/java/com/bailuntec/job/service/BalanceSheetService.java
+92
-17
No files found.
datacenter-domain/src/main/java/com/bailuntec/application/impl/DcBaseFinanceAmazonAdProductServiceImpl.java
View file @
f7a7cbca
package
com
.
bailuntec
.
application
.
impl
;
package
com
.
bailuntec
.
application
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.bailuntec.api.amazon.AmazonAdApi
;
import
com.bailuntec.api.amazon.request.AmazonURI
;
import
com.bailuntec.application.IDcBaseFinanceAmazonAdProductService
;
import
com.bailuntec.application.IDcBaseFinanceAmazonAdProductService
;
import
com.bailuntec.common.BeanUtils
;
import
com.bailuntec.common.JsonUtilByJackson
;
import
com.bailuntec.domain.DcBaseCompanyAccount
;
import
com.bailuntec.domain.DcBaseFinanceAmazonAdProduct
;
import
com.bailuntec.domain.DcBaseFinanceAmazonAdProduct
;
import
com.bailuntec.domain.JobAmazonAdLog
;
import
com.bailuntec.infrastructure.mapper.DcBaseCompanyAccountMapper
;
import
com.bailuntec.infrastructure.mapper.DcBaseFinanceAmazonAdProductMapper
;
import
com.bailuntec.infrastructure.mapper.DcBaseFinanceAmazonAdProductMapper
;
import
com.bailuntec.infrastructure.mapper.JobAmazonAdLogMapper
;
import
com.bailuntec.infrastructure.util.CallBailunSystemUtil
;
import
com.bailuntec.infrastructure.util.enumerate.CurrencyType
;
import
com.bailuntec.pojo.AmazonAdAuth
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.google.common.reflect.TypeToken
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.junit.Assert
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.io.ByteArrayInputStream
;
import
java.io.IOException
;
import
java.lang.reflect.Type
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.zip.GZIPInputStream
;
/**
/**
* <p>
* <p>
...
...
datacenter-domain/src/main/java/com/bailuntec/application/impl/JobAmazonAdLogServiceImpl.java
View file @
f7a7cbca
package
com
.
bailuntec
.
application
.
impl
;
package
com
.
bailuntec
.
application
.
impl
;
import
com.bailuntec.api.amazon.AmazonAdApi
;
import
com.bailuntec.api.amazon.request.AmazonDisplayReportReq
;
import
com.bailuntec.api.amazon.request.AmazonProductsReportReq
;
import
com.bailuntec.api.amazon.request.AmazonURI
;
import
com.bailuntec.api.amazon.response.AmazonAdReportResp
;
import
com.bailuntec.application.IJobAmazonAdLogService
;
import
com.bailuntec.application.IJobAmazonAdLogService
;
import
com.bailuntec.common.JsonUtilByFsJson
;
import
com.bailuntec.common.StringUtils
;
import
com.bailuntec.domain.DcBaseCompanyAccount
;
import
com.bailuntec.domain.JobAmazonAdLog
;
import
com.bailuntec.domain.JobAmazonAdLog
;
import
com.bailuntec.infrastructure.mapper.DcBaseCompanyAccountMapper
;
import
com.bailuntec.infrastructure.mapper.JobAmazonAdLogMapper
;
import
com.bailuntec.infrastructure.mapper.JobAmazonAdLogMapper
;
import
com.bailuntec.pojo.AmazonAdAuth
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.net.URI
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.temporal.ChronoUnit
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Stream
;
/**
/**
* <p>
* <p>
...
...
datacenter-domain/src/main/java/com/bailuntec/domain/DcSemiStockLog.java
0 → 100644
View file @
f7a7cbca
package
com
.
bailuntec
.
domain
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
* @Author: li.yanlin
* @Description:
* @Date: Created in 11:20 2021-03-29
* @Modified by:
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"DcSemiStockLog对象"
,
description
=
""
)
public
class
DcSemiStockLog
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"流水ID"
)
private
Integer
logId
;
@ApiModelProperty
(
"原料sku编码"
)
private
String
skuCode
;
@ApiModelProperty
(
"原料sku名称"
)
private
String
skuName
;
@ApiModelProperty
(
"流水类型ID"
)
private
Integer
logTypeId
;
@ApiModelProperty
(
"流水类型名称"
)
private
String
logType
;
@ApiModelProperty
(
"流水数量"
)
private
Integer
logQuantity
;
@ApiModelProperty
(
"当前库存"
)
private
BigDecimal
finalStock
;
@ApiModelProperty
(
"仓库ID"
)
private
Integer
warehouseId
;
@ApiModelProperty
(
"仓库名称"
)
private
String
warehouseName
;
@ApiModelProperty
(
"半成品仓流水创建日期"
)
private
LocalDateTime
createTime
;
@ApiModelProperty
(
"冗余库存"
)
private
BigDecimal
redundancyStock
;
@ApiModelProperty
(
"仓库类型:1-jit仓,2-计划仓"
)
private
Integer
warehouseType
;
@ApiModelProperty
(
"取数时间"
)
private
LocalDateTime
updateTime
;
@ApiModelProperty
(
"产品大类id"
)
private
Integer
productCategoryId
;
@ApiModelProperty
(
"产品大类"
)
private
String
productCategoryName
;
@ApiModelProperty
(
"产品小类id"
)
private
Integer
TypeId
;
@ApiModelProperty
(
"产品小类"
)
private
String
typeName
;
}
datacenter-domain/src/main/java/com/bailuntec/domain/DcSemiSupplierOfferLog.java
0 → 100644
View file @
f7a7cbca
package
com
.
bailuntec
.
domain
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
* @Author: li.yanlin
* @Description:
* @Date: Created in 17:02 2021-03-27
* @Modified by:
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"DcSemiSupplierOfferLog对象"
,
description
=
""
)
public
class
DcSemiSupplierOfferLog
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
@ApiModelProperty
(
"id"
)
private
Integer
id
;
@ApiModelProperty
(
"流水ID"
)
private
Integer
logId
;
@ApiModelProperty
(
"供应商ID"
)
private
Integer
supplierId
;
@ApiModelProperty
(
"供应商名称"
)
private
String
supplierName
;
@ApiModelProperty
(
"币种ID"
)
private
Integer
unitId
;
@ApiModelProperty
(
"币种名称"
)
private
String
unitName
;
@ApiModelProperty
(
"半成品系统创建时间"
)
private
LocalDateTime
createTime
;
@ApiModelProperty
(
"报价"
)
private
BigDecimal
price
;
@ApiModelProperty
(
"原料SKU编码"
)
private
String
skuCode
;
@ApiModelProperty
(
"原料SKU名称"
)
private
String
skuName
;
@ApiModelProperty
(
"原料SKU ID"
)
private
Integer
skuId
;
@ApiModelProperty
(
"取数时间"
)
private
LocalDateTime
updateTime
;
}
datacenter-domain/src/main/java/com/bailuntec/infrastructure/mapper/DcSemiDailyStockMapper.java
View file @
f7a7cbca
...
@@ -2,11 +2,13 @@ package com.bailuntec.infrastructure.mapper;
...
@@ -2,11 +2,13 @@ package com.bailuntec.infrastructure.mapper;
import
com.bailuntec.domain.DcSemiDailyStock
;
import
com.bailuntec.domain.DcSemiDailyStock
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Insert
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
org.apache.ibatis.annotations.Select
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.util.Date
;
/**
/**
* <p>
* <p>
...
@@ -18,6 +20,12 @@ import java.time.LocalDate;
...
@@ -18,6 +20,12 @@ import java.time.LocalDate;
*/
*/
public
interface
DcSemiDailyStockMapper
extends
BaseMapper
<
DcSemiDailyStock
>
{
public
interface
DcSemiDailyStockMapper
extends
BaseMapper
<
DcSemiDailyStock
>
{
@Insert
(
"insert into dc_semi_daily_stock(day,inventory_amount,sku_code,sku_name,stock_quantity,price,warehouse_id,warehouse_name,redundancy_stock) "
+
"select #{lastDay},l.final_stock * ifnull(ol.price,0),l.sku_code,l.sku_name,l.final_stock,ifnull(ol.price,0),l.warehouse_id,l.warehouse_name,"
+
"case when l.redundancy_stock is null then 0 when l.redundancy_stock < 0 then 0 else l.redundancy_stock end "
+
"from dc_semi_stock_log l left join dc_semi_supplier_offer_log ol on l.sku_code = ol.sku_code"
)
void
insertSemiDailyStock
(
@Param
(
"lastDay"
)
Date
lastDay
);
@Select
(
"select ifnull(sum(inventory_amount),0) from dc_semi_daily_stock where day = #{lastDay}"
)
@Select
(
"select ifnull(sum(inventory_amount),0) from dc_semi_daily_stock where day = #{lastDay}"
)
BigDecimal
getSemiDailyStockSum
(
@Param
(
"lastDay"
)
LocalDate
lastDay
);
BigDecimal
getSemiDailyStockSum
(
@Param
(
"lastDay"
)
LocalDate
lastDay
);
...
...
datacenter-domain/src/main/java/com/bailuntec/infrastructure/mapper/DcSemiStockLogMapper.java
0 → 100644
View file @
f7a7cbca
package
com
.
bailuntec
.
infrastructure
.
mapper
;
import
com.bailuntec.api.bailuntec.mj.resp.StockLogResp
;
import
com.bailuntec.domain.DcSemiStockLog
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
java.util.List
;
/**
* @Author: li.yanlin
* @Description:
* @Date: Created in 11:49 2021-03-29
* @Modified by:
*/
public
interface
DcSemiStockLogMapper
extends
BaseMapper
<
DcSemiStockLog
>
{
void
insertOrUpdateSemiStockLog
(
List
<
StockLogResp
>
semiStockLogDTOList
);
}
datacenter-domain/src/main/java/com/bailuntec/infrastructure/mapper/DcSemiSupplierOfferLogMapper.java
0 → 100644
View file @
f7a7cbca
package
com
.
bailuntec
.
infrastructure
.
mapper
;
import
com.bailuntec.api.bailuntec.mjcg.resp.SupofferLogResp
;
import
com.bailuntec.domain.DcSemiSupplierOfferLog
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Insert
;
import
java.util.List
;
/**
* @Author: li.yanlin
* @Description:
* @Date: Created in 16:59 2021-03-27
* @Modified by:
*/
public
interface
DcSemiSupplierOfferLogMapper
extends
BaseMapper
<
DcSemiSupplierOfferLog
>
{
@Insert
(
"<script>"
+
"insert into dc_semi_supplier_offer_log(log_id,supplier_id,supplier_name,unit_id,unit_name,create_time,price,sku_code,sku_name,sku_id) values"
+
"<foreach collection='list' item='item' index='index' separator=','>"
+
"(#{item.logId},#{item.supplierId},#{item.supplierName},#{item.unitId},#{item.unitName},#{item.createTime},#{item.price},#{item.sku},#{item.skuName},#{item.skuId})"
+
"</foreach>"
+
" on duplicate key update log_id=values(log_id),supplier_id=values(supplier_id),supplier_name=values(supplier_name),unit_id=values(unit_id),unit_name=values(unit_name),"
+
"create_time=values(create_time),price=values(price),sku_name=values(sku_name),sku_id=values(sku_id)"
+
"</script>"
)
void
insertOrUpdateSemiSupplierOfferLog
(
List
<
SupofferLogResp
>
semiSupOfferLogDTOList
);
}
datacenter-domain/src/main/resources/com/bailuntec/mapper/DcSemiStockLogMapper.xml
0 → 100644
View file @
f7a7cbca
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.bailuntec.infrastructure.mapper.DcSemiStockLogMapper"
>
<insert
id=
"insertOrUpdateSemiStockLog"
parameterType=
"java.util.ArrayList"
>
insert into dc_semi_stock_log(
log_id,
sku_code,
sku_name,
log_type_id,
log_type,
log_quantity,
final_stock,
warehouse_id,
warehouse_name,
create_time,
redundancy_stock,
warehouse_type,
type_id,
type_name,
product_category_id,
product_category_name
) values
<foreach
collection=
'list'
item=
'item'
index=
'index'
separator=
','
>
(
#{item.logId},
#{item.skuCode},
#{item.skuName},
#{item.logTypeId},
#{item.logType},
#{item.logQuantity},
#{item.finalStock},
#{item.warehouseId},
#{item.warehouseName},
#{item.createTime},
#{item.redundancyStock},
#{item.warehouseType}
<if
test=
"item.typeId != null"
>
,#{item.typeId}
</if>
<if
test=
"item.typeId == null"
>
,0
</if>
<if
test=
"item.typeName != null"
>
,#{item.typeName}
</if>
<if
test=
"item.typeName == null"
>
,'缺失'
</if>
<if
test=
"item.productCategoryId != null"
>
,#{item.productCategoryId}
</if>
<if
test=
"item.productCategoryId == null"
>
,0
</if>
<if
test=
"item.productCategoryName != null"
>
,#{item.productCategoryName}
</if>
<if
test=
"item.productCategoryName == null"
>
,'缺失'
</if>
)
</foreach>
on duplicate key update
log_id=values(log_id),
sku_name=values(sku_name),
log_type_id=values(log_type_id),
log_type=values(log_type),
log_quantity=values(log_quantity),
final_stock=values(final_stock),
warehouse_id=values(warehouse_id),
warehouse_name=values(warehouse_name),
create_time=values(create_time),
redundancy_stock=values(redundancy_stock),
warehouse_type=values(warehouse_type),
type_id=values(type_id),
type_name=values(type_name),
product_category_id=values(product_category_id),
product_category_name=values(product_category_name)
</insert>
</mapper>
datacenter-job/datacenter-base/base-sync-ebay/src/main/java/com/bailuntec/job/EbayFinanceWriter.java
View file @
f7a7cbca
package
com
.
bailuntec
.
job
;
package
com
.
bailuntec
.
job
;
import
com.alibaba.fastjson.JSON
;
import
com.bailuntec.application.IDcBaseFinanceEbayService
;
import
com.bailuntec.application.IDcBaseFinanceEbayService
;
import
com.bailuntec.domain.DcBaseFinanceEbay
;
import
com.bailuntec.domain.DcBaseFinanceEbay
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.batch.item.ItemWriter
;
import
org.springframework.batch.item.ItemWriter
;
import
org.springframework.lang.NonNull
;
import
org.springframework.lang.NonNull
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.List
;
import
java.util.List
;
import
java.util.TreeSet
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -29,6 +35,19 @@ public class EbayFinanceWriter implements ItemWriter<DcBaseFinanceEbay> {
...
@@ -29,6 +35,19 @@ public class EbayFinanceWriter implements ItemWriter<DcBaseFinanceEbay> {
@Override
@Override
public
void
write
(
@NonNull
List
<?
extends
DcBaseFinanceEbay
>
items
)
{
public
void
write
(
@NonNull
List
<?
extends
DcBaseFinanceEbay
>
items
)
{
log
.
info
(
"批量写入DcBaseFinanceEbay"
);
log
.
info
(
"批量写入DcBaseFinanceEbay"
);
dcBaseFinanceEbayService
.
saveBatch
(
items
.
stream
().
map
(
var
->
(
DcBaseFinanceEbay
)
var
).
collect
(
Collectors
.
toList
()));
List
<
DcBaseFinanceEbay
>
list
=
items
.
stream
()
.
map
(
var
->
(
DcBaseFinanceEbay
)
var
)
.
collect
(
Collectors
.
collectingAndThen
(
Collectors
.
toCollection
(()
->
new
TreeSet
<>(
Comparator
.
comparing
(
DcBaseFinanceEbay:
:
getRefNumber
)))
,
ArrayList:
:
new
)
);
list
.
forEach
(
x
->
{
int
total
=
dcBaseFinanceEbayService
.
count
(
new
LambdaQueryWrapper
<
DcBaseFinanceEbay
>()
.
eq
(
DcBaseFinanceEbay:
:
getRefNumber
,
x
.
getRefNumber
()));
if
(
total
<=
0
){
dcBaseFinanceEbayService
.
save
(
x
);
}
});
}
}
}
}
datacenter-job/datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/job/BalanceSheetJob.java
View file @
f7a7cbca
...
@@ -16,7 +16,7 @@ public class BalanceSheetJob {
...
@@ -16,7 +16,7 @@ public class BalanceSheetJob {
@Resource
@Resource
BalanceSheetService
balanceSheetService
;
BalanceSheetService
balanceSheetService
;
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
syncBankAccount
()
{
public
void
syncBankAccount
()
{
try
{
try
{
log
.
info
(
"每分钟同步 银行帐号信息 开始"
);
log
.
info
(
"每分钟同步 银行帐号信息 开始"
);
...
@@ -30,7 +30,7 @@ public class BalanceSheetJob {
...
@@ -30,7 +30,7 @@ public class BalanceSheetJob {
/**
/**
* 同步提现在途
* 同步提现在途
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
syncWithdrawOnWaySummary
()
{
public
void
syncWithdrawOnWaySummary
()
{
try
{
try
{
log
.
info
(
"每分钟 同步提现在途 开始"
);
log
.
info
(
"每分钟 同步提现在途 开始"
);
...
@@ -44,7 +44,7 @@ public class BalanceSheetJob {
...
@@ -44,7 +44,7 @@ public class BalanceSheetJob {
/**
/**
* 同步第三方帐号余额
* 同步第三方帐号余额
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
syncPayPal
()
{
public
void
syncPayPal
()
{
try
{
try
{
log
.
info
(
"每分钟 同步第三方余额 开始"
);
log
.
info
(
"每分钟 同步第三方余额 开始"
);
...
@@ -59,7 +59,7 @@ public class BalanceSheetJob {
...
@@ -59,7 +59,7 @@ public class BalanceSheetJob {
/**
/**
* 同步短期借款余额
* 同步短期借款余额
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
syncShortBorrowBalance
()
{
public
void
syncShortBorrowBalance
()
{
try
{
try
{
...
@@ -74,11 +74,11 @@ public class BalanceSheetJob {
...
@@ -74,11 +74,11 @@ public class BalanceSheetJob {
/**
/**
* 同步数据中心需要的费用单
* 同步数据中心需要的费用单
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
syncCost
()
{
public
void
syncCost
()
{
try
{
try
{
log
.
info
(
"每分钟 同步数据中心需要的费用单 开始"
);
log
.
info
(
"每分钟 同步数据中心需要的费用单 开始"
);
balanceSheetService
.
syncCost
();
//
balanceSheetService.syncCost();
log
.
info
(
"每分钟 同步数据中心需要的费用单 结束"
);
log
.
info
(
"每分钟 同步数据中心需要的费用单 结束"
);
}
catch
(
Exception
ex
)
{
}
catch
(
Exception
ex
)
{
log
.
error
(
"每分钟 同步数据中心需要的费用单 异常:"
,
ex
);
log
.
error
(
"每分钟 同步数据中心需要的费用单 异常:"
,
ex
);
...
@@ -89,7 +89,7 @@ public class BalanceSheetJob {
...
@@ -89,7 +89,7 @@ public class BalanceSheetJob {
/**
/**
* 同步费用系统采购单:固定资产
* 同步费用系统采购单:固定资产
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
syncBuy
()
{
public
void
syncBuy
()
{
try
{
try
{
log
.
info
(
"每分钟 同步费用系统采购单 开始"
);
log
.
info
(
"每分钟 同步费用系统采购单 开始"
);
...
@@ -109,7 +109,7 @@ public class BalanceSheetJob {
...
@@ -109,7 +109,7 @@ public class BalanceSheetJob {
* </p>
* </p>
* 数据来源
* 数据来源
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
generateBalanceSheet
()
{
public
void
generateBalanceSheet
()
{
try
{
try
{
log
.
info
(
"每分钟 生成资产负债表 开始"
);
log
.
info
(
"每分钟 生成资产负债表 开始"
);
...
@@ -129,7 +129,7 @@ public class BalanceSheetJob {
...
@@ -129,7 +129,7 @@ public class BalanceSheetJob {
* </p>
* </p>
* 数据来源
* 数据来源
*/
*/
@Scheduled
(
cron
=
"0
/10 * *
* * ?"
)
@Scheduled
(
cron
=
"0
0 1
* * ?"
)
public
void
generateBalanceSheetNewResult
()
{
public
void
generateBalanceSheetNewResult
()
{
try
{
try
{
log
.
info
(
"每分钟 生成新资产负债结果表 开始"
);
log
.
info
(
"每分钟 生成新资产负债结果表 开始"
);
...
...
datacenter-job/datacenter-finance/finance-balance-sheet/src/main/java/com/bailuntec/job/service/BalanceSheetService.java
View file @
f7a7cbca
...
@@ -5,13 +5,19 @@ import com.bailuntec.api.bailuntec.cw.response.BankAccountBalanceDTO;
...
@@ -5,13 +5,19 @@ import com.bailuntec.api.bailuntec.cw.response.BankAccountBalanceDTO;
import
com.bailuntec.api.bailuntec.cw.response.BorrowBalanceDTO
;
import
com.bailuntec.api.bailuntec.cw.response.BorrowBalanceDTO
;
import
com.bailuntec.api.bailuntec.cw.response.PayPalBalanceDTO
;
import
com.bailuntec.api.bailuntec.cw.response.PayPalBalanceDTO
;
import
com.bailuntec.api.bailuntec.cw.response.WithdrawOnWayDTO
;
import
com.bailuntec.api.bailuntec.cw.response.WithdrawOnWayDTO
;
import
com.bailuntec.api.bailuntec.mj.MjzzApi
;
import
com.bailuntec.api.bailuntec.mj.resp.MjzzPage
;
import
com.bailuntec.api.bailuntec.mj.resp.MjzzResult
;
import
com.bailuntec.api.bailuntec.mj.resp.StockLogResp
;
import
com.bailuntec.api.bailuntec.mjcg.MjgysApi
;
import
com.bailuntec.api.bailuntec.mjcg.resp.MjgysResult
;
import
com.bailuntec.api.bailuntec.mjcg.resp.SupofferLogResp
;
import
com.bailuntec.application.*
;
import
com.bailuntec.application.*
;
import
com.bailuntec.common.BeanUtils
;
import
com.bailuntec.common.BeanUtils
;
import
com.bailuntec.common.ListUtil
;
import
com.bailuntec.common.ListUtil
;
import
com.bailuntec.cost.api.BuyApi
;
import
com.bailuntec.cost.api.BuyApi
;
import
com.bailuntec.cost.api.CostApi
;
import
com.bailuntec.cost.api.CostApi
;
import
com.bailuntec.cost.api.domain.BuyDomain
;
import
com.bailuntec.cost.api.domain.BuyDomain
;
import
com.bailuntec.cost.api.dto.CostDto
;
import
com.bailuntec.domain.*
;
import
com.bailuntec.domain.*
;
import
com.bailuntec.infrastructure.mapper.*
;
import
com.bailuntec.infrastructure.mapper.*
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
...
@@ -24,6 +30,9 @@ import java.math.BigDecimal;
...
@@ -24,6 +30,9 @@ import java.math.BigDecimal;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.ZoneOffset
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -213,22 +222,22 @@ public class BalanceSheetService {
...
@@ -213,22 +222,22 @@ public class BalanceSheetService {
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
List
<
CostDto
>
costDtoList
=
costApi
.
balanceSheetCostList
(
dcJobConfig
.
getStartTimeStr
(),
dcJobConfig
.
getEndTimeStr
()).
getData
();
//
List<CostDto> costDtoList = costApi.balanceSheetCostList(dcJobConfig.getStartTimeStr(), dcJobConfig.getEndTimeStr()).getData();
costDtoList
.
forEach
(
costDto
->
{
//
costDtoList.forEach(costDto -> {
//
DcBaseCost
dcBaseCost
=
dcBaseCostMapper
.
selectByCostNo
(
costDto
.
getCostNo
());
//
DcBaseCost dcBaseCost = dcBaseCostMapper.selectByCostNo(costDto.getCostNo());
if
(
dcBaseCost
==
null
)
{
//
if (dcBaseCost == null) {
dcBaseCost
=
new
DcBaseCost
();
//
dcBaseCost = new DcBaseCost();
}
//
}
BeanUtils
.
copyProperties
(
costDto
,
dcBaseCost
,
"id"
);
//
BeanUtils.copyProperties(costDto, dcBaseCost, "id");
dcBaseCost
.
setDay
(
dcJobConfig
.
getStartTime
().
toLocalDate
());
//
dcBaseCost.setDay(dcJobConfig.getStartTime().toLocalDate());
if
(
costDto
.
getCostStatus
().
equals
(
4
))
{
//
if (costDto.getCostStatus().equals(4)) {
dcBaseCost
.
setIsWaitPay
(
0
);
//
dcBaseCost.setIsWaitPay(0);
}
else
{
//
} else {
dcBaseCost
.
setIsWaitPay
(
1
);
//
dcBaseCost.setIsWaitPay(1);
}
//
}
dcBaseCostService
.
saveOrUpdate
(
dcBaseCost
);
//
dcBaseCostService.saveOrUpdate(dcBaseCost);
});
//
});
// 删除要过滤的公司主体数据
// 删除要过滤的公司主体数据
dcBaseCostMapper
.
deleteUnusedCost
(
date
);
dcBaseCostMapper
.
deleteUnusedCost
(
date
);
...
@@ -406,6 +415,17 @@ public class BalanceSheetService {
...
@@ -406,6 +415,17 @@ public class BalanceSheetService {
@Resource
@Resource
IDcBalanceSheetNewService
dcBalanceSheetNewService
;
IDcBalanceSheetNewService
dcBalanceSheetNewService
;
@Resource
DcSemiSupplierOfferLogMapper
dcSemiSupplierOfferLogMapper
;
@Resource
DcSemiStockLogMapper
dcSemiStockLogMapper
;
@Resource
MjgysApi
mjgysApi
;
@Resource
MjzzApi
mjzzApi
;
/**
/**
* 每天生成资产负债表
* 每天生成资产负债表
* companyValue 0
* companyValue 0
...
@@ -467,6 +487,8 @@ public class BalanceSheetService {
...
@@ -467,6 +487,8 @@ public class BalanceSheetService {
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
LocalDate
date
=
dcJobConfig
.
getStartTime
().
toLocalDate
();
getSemiInventoryBalance
(
dcJobConfig
);
DcBalanceSheet
dcBalanceSheet
=
dcBalanceSheetMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheet
>()
DcBalanceSheet
dcBalanceSheet
=
dcBalanceSheetMapper
.
selectOne
(
new
LambdaQueryWrapper
<
DcBalanceSheet
>()
.
eq
(
DcBalanceSheet:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheet:
:
getCompanyValue
,
companyValue
)
.
eq
(
DcBalanceSheet:
:
getCompanyName
,
companyName
)
.
eq
(
DcBalanceSheet:
:
getCompanyName
,
companyName
)
...
@@ -642,6 +664,59 @@ public class BalanceSheetService {
...
@@ -642,6 +664,59 @@ public class BalanceSheetService {
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
dcJobConfigMapper
.
updateById
(
dcJobConfig
.
refresh
());
}
}
/**
* <p>
* 获取半成品存货
* </p>
* @param dcJobConfig
*/
public
void
getSemiInventoryBalance
(
DcJobConfig
dcJobConfig
){
boolean
isOk
=
true
;
DateTimeFormatter
dtf
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
String
startDate
=
dcJobConfig
.
getStartTime
().
toLocalDate
().
format
(
dtf
);
String
endDate
=
dcJobConfig
.
getEndTime
().
toLocalDate
().
format
(
dtf
);
try
{
MjgysResult
<
List
<
SupofferLogResp
>>
supofferLogs
=
mjgysApi
.
supofferLog
(
startDate
,
endDate
);
if
(
supofferLogs
.
isSuccess
()
&&
supofferLogs
.
getData
().
size
()
>
0
)
{
dcSemiSupplierOfferLogMapper
.
insertOrUpdateSemiSupplierOfferLog
(
supofferLogs
.
getData
());
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
isOk
=
false
;
}
int
rows
=
5000
;
int
page
=
1
;
try
{
MjzzResult
<
MjzzPage
<
StockLogResp
>>
stockLogResult
=
mjzzApi
.
stockLog
(
page
,
rows
,
startDate
,
endDate
);
if
(
stockLogResult
.
getSuccess
()
&&
stockLogResult
.
getData
().
getTotalItems
()
>
0
)
{
dcSemiStockLogMapper
.
insertOrUpdateSemiStockLog
(
stockLogResult
.
getData
().
getItems
());
int
totalPages
=
stockLogResult
.
getData
().
getTotalPages
();
stockLogResult
=
null
;
while
(
page
<
totalPages
)
{
page
+=
1
;
try
{
stockLogResult
=
mjzzApi
.
stockLog
(
page
,
rows
,
startDate
,
endDate
);
if
(
stockLogResult
.
getData
()
!=
null
&&
stockLogResult
.
getData
().
getItems
()
!=
null
)
{
dcSemiStockLogMapper
.
insertOrUpdateSemiStockLog
(
stockLogResult
.
getData
().
getItems
());
}
stockLogResult
=
null
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
isOk
=
false
;
continue
;
}
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
isOk
=
false
;
}
// 生成半成品每日存货
if
(
isOk
)
{
Date
lastDay
=
Date
.
from
(
dcJobConfig
.
getStartTime
().
toInstant
(
ZoneOffset
.
ofHours
(
8
)));
dcSemiDailyStockMapper
.
insertSemiDailyStock
(
lastDay
);
}
}
@Resource
@Resource
IDcBalanceSheetNewResultService
dcBalanceSheetNewResultService
;
IDcBalanceSheetNewResultService
dcBalanceSheetNewResultService
;
...
...
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