Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dc-java
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
dc-java
Commits
35b8d15c
Commit
35b8d15c
authored
Jan 16, 2020
by
yinyong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
数据中心--记录每天的sku+仓库的调拨出库的在途数和30天内的调拨出库数
parent
c4def909
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
415 additions
and
0 deletions
+415
-0
DcDailyTransitFrom.java
.../java/com/bailuntec/domain/entity/DcDailyTransitFrom.java
+192
-0
DcDailyTransitFromExample.java
...m/bailuntec/domain/example/DcDailyTransitFromExample.java
+0
-0
DcDailyTransitFromMapper.java
...n/java/com/bailuntec/mapper/DcDailyTransitFromMapper.java
+136
-0
DcDailyTransitFromMapper.xml
...in/java/com/bailuntec/mapper/DcDailyTransitFromMapper.xml
+0
-0
Application.java
...-daily-stock/src/main/java/com/bailuntec/Application.java
+9
-0
DailyTransferJob.java
...ock/src/main/java/com/bailuntec/job/DailyTransferJob.java
+75
-0
job.properties
data-mid/mid-daily-stock/src/main/resources/job.properties
+3
-0
No files found.
data-common/src/main/java/com/bailuntec/domain/entity/DcDailyTransitFrom.java
0 → 100644
View file @
35b8d15c
package
com
.
bailuntec
.
domain
.
entity
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
@Data
public
class
DcDailyTransitFrom
{
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.id
*
* @mbg.generated
*/
private
Integer
id
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.gmt_create
*
* @mbg.generated
*/
private
LocalDateTime
gmtCreate
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.gmt_modified
*
* @mbg.generated
*/
private
LocalDateTime
gmtModified
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.bailun_sku
*
* @mbg.generated
*/
private
String
bailunSku
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.warehouse_code
*
* @mbg.generated
*/
private
String
warehouseCode
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.quantity_transfer_inbound
*
* @mbg.generated
*/
private
Integer
quantityTransferInbound
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.quantity_transfer
*
* @mbg.generated
*/
private
Integer
quantityTransfer
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.quantity_transfer_plan
*
* @mbg.generated
*/
private
Integer
quantityTransferPlan
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.record_time
*
* @mbg.generated
*/
private
LocalDate
recordTime
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.company_id
*
* @mbg.generated
*/
private
Integer
companyId
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_daily_transit_from.unit_price
*
* @mbg.generated
*/
private
BigDecimal
unitPrice
;
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
@Override
public
String
toString
()
{
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
getClass
().
getSimpleName
());
sb
.
append
(
" ["
);
sb
.
append
(
"Hash = "
).
append
(
hashCode
());
sb
.
append
(
", id="
).
append
(
id
);
sb
.
append
(
", gmtCreate="
).
append
(
gmtCreate
);
sb
.
append
(
", gmtModified="
).
append
(
gmtModified
);
sb
.
append
(
", bailunSku="
).
append
(
bailunSku
);
sb
.
append
(
", warehouseCode="
).
append
(
warehouseCode
);
sb
.
append
(
", quantityTransferInbound="
).
append
(
quantityTransferInbound
);
sb
.
append
(
", quantityTransfer="
).
append
(
quantityTransfer
);
sb
.
append
(
", quantityTransferPlan="
).
append
(
quantityTransferPlan
);
sb
.
append
(
", recordTime="
).
append
(
recordTime
);
sb
.
append
(
", companyId="
).
append
(
companyId
);
sb
.
append
(
", unitPrice="
).
append
(
unitPrice
);
sb
.
append
(
"]"
);
return
sb
.
toString
();
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
@Override
public
boolean
equals
(
Object
that
)
{
if
(
this
==
that
)
{
return
true
;
}
if
(
that
==
null
)
{
return
false
;
}
if
(
getClass
()
!=
that
.
getClass
())
{
return
false
;
}
DcDailyTransitFrom
other
=
(
DcDailyTransitFrom
)
that
;
return
(
this
.
getId
()
==
null
?
other
.
getId
()
==
null
:
this
.
getId
().
equals
(
other
.
getId
()))
&&
(
this
.
getGmtCreate
()
==
null
?
other
.
getGmtCreate
()
==
null
:
this
.
getGmtCreate
().
equals
(
other
.
getGmtCreate
()))
&&
(
this
.
getGmtModified
()
==
null
?
other
.
getGmtModified
()
==
null
:
this
.
getGmtModified
().
equals
(
other
.
getGmtModified
()))
&&
(
this
.
getBailunSku
()
==
null
?
other
.
getBailunSku
()
==
null
:
this
.
getBailunSku
().
equals
(
other
.
getBailunSku
()))
&&
(
this
.
getWarehouseCode
()
==
null
?
other
.
getWarehouseCode
()
==
null
:
this
.
getWarehouseCode
().
equals
(
other
.
getWarehouseCode
()))
&&
(
this
.
getQuantityTransferInbound
()
==
null
?
other
.
getQuantityTransferInbound
()
==
null
:
this
.
getQuantityTransferInbound
().
equals
(
other
.
getQuantityTransferInbound
()))
&&
(
this
.
getQuantityTransfer
()
==
null
?
other
.
getQuantityTransfer
()
==
null
:
this
.
getQuantityTransfer
().
equals
(
other
.
getQuantityTransfer
()))
&&
(
this
.
getQuantityTransferPlan
()
==
null
?
other
.
getQuantityTransferPlan
()
==
null
:
this
.
getQuantityTransferPlan
().
equals
(
other
.
getQuantityTransferPlan
()))
&&
(
this
.
getRecordTime
()
==
null
?
other
.
getRecordTime
()
==
null
:
this
.
getRecordTime
().
equals
(
other
.
getRecordTime
()))
&&
(
this
.
getCompanyId
()
==
null
?
other
.
getCompanyId
()
==
null
:
this
.
getCompanyId
().
equals
(
other
.
getCompanyId
()))
&&
(
this
.
getUnitPrice
()
==
null
?
other
.
getUnitPrice
()
==
null
:
this
.
getUnitPrice
().
equals
(
other
.
getUnitPrice
()));
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
@Override
public
int
hashCode
()
{
final
int
prime
=
31
;
int
result
=
1
;
result
=
prime
*
result
+
((
getId
()
==
null
)
?
0
:
getId
().
hashCode
());
result
=
prime
*
result
+
((
getGmtCreate
()
==
null
)
?
0
:
getGmtCreate
().
hashCode
());
result
=
prime
*
result
+
((
getGmtModified
()
==
null
)
?
0
:
getGmtModified
().
hashCode
());
result
=
prime
*
result
+
((
getBailunSku
()
==
null
)
?
0
:
getBailunSku
().
hashCode
());
result
=
prime
*
result
+
((
getWarehouseCode
()
==
null
)
?
0
:
getWarehouseCode
().
hashCode
());
result
=
prime
*
result
+
((
getQuantityTransferInbound
()
==
null
)
?
0
:
getQuantityTransferInbound
().
hashCode
());
result
=
prime
*
result
+
((
getQuantityTransfer
()
==
null
)
?
0
:
getQuantityTransfer
().
hashCode
());
result
=
prime
*
result
+
((
getQuantityTransferPlan
()
==
null
)
?
0
:
getQuantityTransferPlan
().
hashCode
());
result
=
prime
*
result
+
((
getRecordTime
()
==
null
)
?
0
:
getRecordTime
().
hashCode
());
result
=
prime
*
result
+
((
getCompanyId
()
==
null
)
?
0
:
getCompanyId
().
hashCode
());
result
=
prime
*
result
+
((
getUnitPrice
()
==
null
)
?
0
:
getUnitPrice
().
hashCode
());
return
result
;
}
}
\ No newline at end of file
data-common/src/main/java/com/bailuntec/domain/example/DcDailyTransitFromExample.java
0 → 100644
View file @
35b8d15c
This diff is collapsed.
Click to expand it.
data-common/src/main/java/com/bailuntec/mapper/DcDailyTransitFromMapper.java
0 → 100644
View file @
35b8d15c
package
com
.
bailuntec
.
mapper
;
import
com.bailuntec.domain.dto.TransferTransitQuantity
;
import
com.bailuntec.domain.entity.DcDailyTransitFrom
;
import
com.bailuntec.domain.example.DcDailyTransitFromExample
;
import
org.apache.ibatis.annotations.Param
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.List
;
public
interface
DcDailyTransitFromMapper
{
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
long
countByExample
(
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
deleteByExample
(
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
deleteByPrimaryKey
(
Integer
id
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
insert
(
DcDailyTransitFrom
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
insertSelective
(
DcDailyTransitFrom
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
DcDailyTransitFrom
selectOneByExample
(
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
List
<
DcDailyTransitFrom
>
selectByExample
(
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
DcDailyTransitFrom
selectByPrimaryKey
(
Integer
id
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
updateByExampleSelective
(
@Param
(
"record"
)
DcDailyTransitFrom
record
,
@Param
(
"example"
)
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
updateByExample
(
@Param
(
"record"
)
DcDailyTransitFrom
record
,
@Param
(
"example"
)
DcDailyTransitFromExample
example
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
updateByPrimaryKeySelective
(
DcDailyTransitFrom
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
*/
int
updateByPrimaryKey
(
DcDailyTransitFrom
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
int
upsert
(
DcDailyTransitFrom
record
);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_daily_transit_from
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
int
upsertSelective
(
DcDailyTransitFrom
record
);
List
<
TransferTransitQuantity
>
selectQuantityTransferTransitFrom
();
int
calculateTransferTransitFrom
(
@Param
(
"list"
)
List
<
TransferTransitQuantity
>
list
,
@Param
(
"localDate"
)
LocalDate
localDate
);
List
<
TransferTransitQuantity
>
selectQuantityTransferComplete
(
@Param
(
"localDate"
)
LocalDate
localDate
);
int
updateSkuUnitPrice
(
@Param
(
"localDate"
)
LocalDate
localDate
);
}
\ No newline at end of file
data-common/src/main/java/com/bailuntec/mapper/DcDailyTransitFromMapper.xml
0 → 100644
View file @
35b8d15c
This diff is collapsed.
Click to expand it.
data-mid/mid-daily-stock/src/main/java/com/bailuntec/Application.java
View file @
35b8d15c
...
...
@@ -2,6 +2,7 @@ package com.bailuntec;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.bailuntec.job.DailyStockJob
;
import
com.bailuntec.job.DailyTransferJob
;
import
com.bailuntec.listener.DailyStockJobListener
;
import
com.bailuntec.utils.PropertiesUtil
;
import
com.dangdang.ddframe.job.config.JobCoreConfiguration
;
...
...
@@ -26,6 +27,7 @@ public class Application {
private
static
final
String
EVENT_RDB_STORAGE_PASSWORD
=
propertiesUtil
.
getPropertyAsString
(
"EVENT_RDB_STORAGE_PASSWORD"
);
public
static
void
main
(
String
[]
args
)
{
new
JobScheduler
(
createRegistryCenter
(),
createJobConfiguration1
(),
createJobEventConfiguration
(),
new
DailyStockJobListener
()).
init
();
new
JobScheduler
(
createRegistryCenter
(),
createJobConfiguration2
()).
init
();
}
private
static
CoordinatorRegistryCenter
createRegistryCenter
()
{
...
...
@@ -41,6 +43,13 @@ public class Application {
return
simpleJobRootConfig
;
}
private
static
LiteJobConfiguration
createJobConfiguration2
()
{
JobCoreConfiguration
simpleCoreConfig
=
JobCoreConfiguration
.
newBuilder
(
propertiesUtil
.
getPropertyAsString
(
"JOB_NAME_TRANSFER"
),
propertiesUtil
.
getPropertyAsString
(
"JOB_CRON_TRANSFER"
),
propertiesUtil
.
getPropertyAsInt
(
"SHARDING_TOTAL_COUNT"
)).
build
();
SimpleJobConfiguration
simpleJobConfig
=
new
SimpleJobConfiguration
(
simpleCoreConfig
,
DailyTransferJob
.
class
.
getCanonicalName
());
LiteJobConfiguration
simpleJobRootConfig
=
LiteJobConfiguration
.
newBuilder
(
simpleJobConfig
).
build
();
return
simpleJobRootConfig
;
}
private
static
JobEventConfiguration
createJobEventConfiguration
()
{
JobEventConfiguration
jobEventRdbConfig
=
new
JobEventRdbConfiguration
(
setUpEventTraceDataSource
());
return
jobEventRdbConfig
;
...
...
data-mid/mid-daily-stock/src/main/java/com/bailuntec/job/DailyTransferJob.java
0 → 100644
View file @
35b8d15c
package
com
.
bailuntec
.
job
;
import
com.bailuntec.domain.dto.TransferTransitQuantity
;
import
com.bailuntec.domain.entity.DcDailyTransitFrom
;
import
com.bailuntec.mapper.DcBaseStockMapper
;
import
com.bailuntec.mapper.DcBaseTransferCompleteMapper
;
import
com.bailuntec.mapper.DcDailyTransitFromMapper
;
import
com.bailuntec.mapper.DcMidTransitMapper
;
import
com.bailuntec.utils.SessionUtil
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
com.dangdang.ddframe.job.api.simple.SimpleJob
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.ibatis.session.SqlSession
;
import
org.apache.ibatis.session.TransactionIsolationLevel
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Calendar
;
import
java.util.Date
;
import
java.util.List
;
@Slf4j
public
class
DailyTransferJob
implements
SimpleJob
{
@Override
public
void
execute
(
ShardingContext
shardingContext
)
{
LocalDate
localDate
=
LocalDate
.
now
();
LocalDate
lastLocalDate
=
localDate
.
minusDays
(
1L
);
SqlSession
sqlSession
=
SessionUtil
.
getFactory
().
openSession
(
TransactionIsolationLevel
.
READ_UNCOMMITTED
);
try
{
DcDailyTransitFromMapper
dcDailyTransitFromMapper
=
sqlSession
.
getMapper
(
DcDailyTransitFromMapper
.
class
);
List
<
TransferTransitQuantity
>
transferTransitQuantityList
=
dcDailyTransitFromMapper
.
selectQuantityTransferTransitFrom
();
if
(
transferTransitQuantityList
!=
null
)
{
dcDailyTransitFromMapper
.
calculateTransferTransitFrom
(
transferTransitQuantityList
,
lastLocalDate
);
}
sqlSession
.
commit
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
"计算调拨在途数失败"
,
e
);
}
finally
{
if
(
sqlSession
!=
null
)
{
sqlSession
.
close
();
}
}
try
{
DcDailyTransitFromMapper
dcDailyTransitFromMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcDailyTransitFromMapper
.
class
);
List
<
TransferTransitQuantity
>
transferTransitQuantityList
=
dcDailyTransitFromMapper
.
selectQuantityTransferComplete
(
localDate
);
for
(
TransferTransitQuantity
transferTransitQuantity
:
transferTransitQuantityList
)
{
DcDailyTransitFrom
dcDailyTransitFrom
=
new
DcDailyTransitFrom
();
dcDailyTransitFrom
.
setBailunSku
(
transferTransitQuantity
.
getBailunSku
());
dcDailyTransitFrom
.
setWarehouseCode
(
transferTransitQuantity
.
getWarehouseCode
());
dcDailyTransitFrom
.
setQuantityTransferInbound
(
transferTransitQuantity
.
getCount
());
dcDailyTransitFrom
.
setRecordTime
(
lastLocalDate
);
int
result
=
dcDailyTransitFromMapper
.
upsertSelective
(
dcDailyTransitFrom
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
"计算近30天入库失败"
,
e
);
}
finally
{
SessionUtil
.
closeSession
();
}
try
{
DcDailyTransitFromMapper
dcDailyTransitFromMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcDailyTransitFromMapper
.
class
);
dcDailyTransitFromMapper
.
updateSkuUnitPrice
(
lastLocalDate
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
throw
new
RuntimeException
(
"更改sku单价失败"
,
e
);
}
finally
{
SessionUtil
.
closeSession
();
}
}
}
data-mid/mid-daily-stock/src/main/resources/job.properties
View file @
35b8d15c
...
...
@@ -11,4 +11,6 @@ ZOOKEEPER_SERVER=172.31.255.120:2181
NAME_SPACE
=
data-center
JOB_NAME_DAILY
=
daily-stock-snapshot
JOB_CRON_DAILY
=
0 10 0 * * ? *
JOB_NAME_TRANSFER
=
daily-transfer-from-snapshot
JOB_CRON_TRANSFER
=
0 10 0 * * ? *
SHARDING_TOTAL_COUNT
=
1
\ No newline at end of file
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