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
278a4a92
Commit
278a4a92
authored
Feb 27, 2021
by
huluobin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
# 更新
parent
47faf69b
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
43 additions
and
53 deletions
+43
-53
ExcelListener.java
...over/src/main/java/com/bailuntec/excel/ExcelListener.java
+1
-4
AutoTurnoverJob.java
...over/src/main/java/com/bailuntec/job/AutoTurnoverJob.java
+26
-10
QueueConsumerJob.java
...ver/src/main/java/com/bailuntec/job/QueueConsumerJob.java
+1
-18
ReplaceLogisticJob.java
...r/src/main/java/com/bailuntec/job/ReplaceLogisticJob.java
+1
-4
TurnoverDaysHandler.java
.../java/com/bailuntec/service/impl/TurnoverDaysHandler.java
+9
-10
AutoTurnoverTest.java
...ow/show-auto-turnover/src/test/java/AutoTurnoverTest.java
+5
-7
No files found.
data-show/show-auto-turnover/src/main/java/com/bailuntec/excel/ExcelListener.java
View file @
278a4a92
...
...
@@ -3,7 +3,6 @@ package com.bailuntec.excel;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.fastjson.JSON
;
import
com.bailuntec.domain.constant.CommonConstant
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.example.DcBaseStockExample
;
import
com.bailuntec.job.AutoTurnoverJob
;
...
...
@@ -12,8 +11,6 @@ import com.bailuntec.utils.SessionUtil;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -72,7 +69,7 @@ public class ExcelListener extends AnalysisEventListener<DcAutoTurnoverExcel> {
.
example
());
try
{
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
...
...
data-show/show-auto-turnover/src/main/java/com/bailuntec/job/AutoTurnoverJob.java
View file @
278a4a92
...
...
@@ -46,7 +46,7 @@ public class AutoTurnoverJob extends PointJob {
private
AutoSalesService
autoSalesService
=
new
AutoSalesServiceImpl
();
private
AutoTurnoverService
autoTurnoverService
=
new
AutoTurnoverServiceImpl
();
public
static
ThreadLocal
<
S
hardingContext
>
shardingContextThreadLocal
=
new
ThreadLocal
<>();
public
static
ThreadLocal
<
S
tring
>
transferStrategy
=
new
ThreadLocal
<>();
@Override
public
void
executeJob
(
ShardingContext
shardingContext
,
JobPointLog
jobPointLog
)
{
...
...
@@ -128,13 +128,12 @@ public class AutoTurnoverJob extends PointJob {
,
countItem
.
incrementAndGet
());
try
{
shardingContextThreadLocal
.
set
(
shardingContext
);
String
queryTime
=
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
());
dcBaseStock
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseStockMapper
.
class
).
selectOneByExample
(
DcBaseStockExample
.
newAndCreateCriteria
()
.
andBailunSkuEqualTo
(
dcBaseStock
.
getBailunSku
())
.
andWarehouseCodeEqualTo
(
dcBaseStock
.
getWarehouseCode
())
.
example
());
this
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
this
.
autoTurnoverFromStock
(
dcBaseStock
);
}
catch
(
Exception
e
)
{
try
{
DcAutoException
dcAutoException
=
new
DcAutoException
();
...
...
@@ -150,7 +149,6 @@ public class AutoTurnoverJob extends PointJob {
}
finally
{
SessionUtil
.
closeSession
();
shardingContextThreadLocal
.
remove
();
}
});
}
...
...
@@ -199,6 +197,24 @@ public class AutoTurnoverJob extends PointJob {
}
}
public
void
autoTurnoverFromStock
(
DcBaseStock
dcBaseStock
)
{
String
queryTime
=
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
());
this
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
DcBaseWarehouseMapper
dcBaseWarehouseMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseWarehouseMapper
.
class
);
DcBaseWarehouse
dcBaseWarehouse
=
dcBaseWarehouseMapper
.
selectByWarehouseCode
(
dcBaseStock
.
getWarehouseCode
());
if
(!
"国内仓"
.
equals
(
dcBaseWarehouse
.
getHqType
()))
{
transferStrategy
.
set
(
Constant
.
OCEAN_HEAD
);
this
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
transferStrategy
.
remove
();
transferStrategy
.
set
(
Constant
.
AIR_HEAD
);
this
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
transferStrategy
.
remove
();
}
}
/**
* <p>
...
...
@@ -209,7 +225,7 @@ public class AutoTurnoverJob extends PointJob {
* @param queryTime 时间
* @param dcBaseStock 库存
*/
p
ublic
void
autoTurnoverFromStock
(
String
queryTime
,
DcBaseStock
dcBaseStock
)
{
p
rivate
void
autoTurnoverFromStock
(
String
queryTime
,
DcBaseStock
dcBaseStock
)
{
//sku
String
bailunSku
=
dcBaseStock
.
getBailunSku
();
//仓库编码
...
...
@@ -846,7 +862,7 @@ public class AutoTurnoverJob extends PointJob {
dcAutoTurnover
.
setIsOutStock
(
0
);
dcAutoTurnover
.
setGmtModified
(
LocalDateTime
.
now
());
if
(
Constant
.
OCEAN_HEAD
.
equals
(
shardingContextThreadLocal
.
get
().
getJobParameter
()))
{
if
(
Constant
.
OCEAN_HEAD
.
equals
(
transferStrategy
.
get
()))
{
DcAutoTurnoverOceanWithBLOBs
dcAutoTurnoverOceanWithBLOBs
=
new
DcAutoTurnoverOceanWithBLOBs
();
BeanUtils
.
copyProperties
(
dcAutoTurnover
,
dcAutoTurnoverOceanWithBLOBs
);
...
...
@@ -854,9 +870,9 @@ public class AutoTurnoverJob extends PointJob {
int
i
=
dcAutoTurnoverOceanMapper
.
updateByExampleSelective
(
dcAutoTurnoverOceanWithBLOBs
,
DcAutoTurnoverOceanExample
.
newAndCreateCriteria
().
andBailunSkuEqualTo
(
dcAutoTurnover
.
getBailunSku
()).
andWarehouseCodeEqualTo
(
dcAutoTurnover
.
getWarehouseCode
()).
example
());
if
(
i
==
0
)
{
dcAutoTurnoverOceanMapper
.
insertSelective
(
dcAutoTurnoverOceanWithBLOBs
);
this
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
this
.
autoTurnoverFromStock
(
dcBaseStock
);
}
}
else
if
(
Constant
.
AIR_HEAD
.
equals
(
shardingContextThreadLocal
.
get
().
getJobParameter
()))
{
}
else
if
(
Constant
.
AIR_HEAD
.
equals
(
transferStrategy
.
get
()))
{
DcAutoTurnoverAirWithBLOBs
dcAutoTurnoverAirWithBLOBs
=
new
DcAutoTurnoverAirWithBLOBs
();
BeanUtils
.
copyProperties
(
dcAutoTurnover
,
dcAutoTurnoverAirWithBLOBs
);
...
...
@@ -864,13 +880,13 @@ public class AutoTurnoverJob extends PointJob {
int
i
=
dcAutoTurnoverAirMapper
.
updateByExampleSelective
(
dcAutoTurnoverAirWithBLOBs
,
DcAutoTurnoverAirExample
.
newAndCreateCriteria
().
andBailunSkuEqualTo
(
dcAutoTurnover
.
getBailunSku
()).
andWarehouseCodeEqualTo
(
dcAutoTurnover
.
getWarehouseCode
()).
example
());
if
(
i
==
0
)
{
dcAutoTurnoverAirMapper
.
insertSelective
(
dcAutoTurnoverAirWithBLOBs
);
this
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
this
.
autoTurnoverFromStock
(
dcBaseStock
);
}
}
else
{
int
i
=
autoTurnoverMapper
.
updateByExampleSelective
(
dcAutoTurnover
,
DcAutoTurnoverExample
.
newAndCreateCriteria
().
andBailunSkuEqualTo
(
dcAutoTurnover
.
getBailunSku
()).
andWarehouseCodeEqualTo
(
dcAutoTurnover
.
getWarehouseCode
()).
example
());
if
(
i
==
0
)
{
autoTurnoverMapper
.
insertSelective
(
dcAutoTurnover
);
this
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
this
.
autoTurnoverFromStock
(
dcBaseStock
);
}
}
...
...
data-show/show-auto-turnover/src/main/java/com/bailuntec/job/QueueConsumerJob.java
View file @
278a4a92
...
...
@@ -2,8 +2,6 @@ package com.bailuntec.job;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.bailuntec.domain.constant.CommonConstant
;
import
com.bailuntec.domain.constant.Constant
;
import
com.bailuntec.domain.entity.DcBaseQueue
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.example.DcBaseStockExample
;
...
...
@@ -12,15 +10,11 @@ import com.bailuntec.mapper.DcBaseStockMapper;
import
com.bailuntec.utils.SessionUtil
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
com.dangdang.ddframe.job.api.simple.SimpleJob
;
import
com.dangdang.ddframe.job.executor.ShardingContexts
;
import
lombok.Data
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.ibatis.session.SqlSession
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
/**
...
...
@@ -54,7 +48,6 @@ public class QueueConsumerJob implements SimpleJob {
List
<
DcBaseQueue
>
dcBaseQueueList
=
dcBaseQueueMapper
.
poll
(
shardingContext
);
dcBaseQueueList
.
parallelStream
().
forEach
(
dcBaseQueue
->
{
AutoTurnoverJob
.
shardingContextThreadLocal
.
set
(
shardingContext
);
BaseQueueMessage
baseQueueMessage
=
JSON
.
parseObject
(
dcBaseQueue
.
getMessage
(),
BaseQueueMessage
.
class
);
DcBaseStock
dcBaseStock
=
dcBaseStockMapper
.
selectOneByExample
(
DcBaseStockExample
.
newAndCreateCriteria
()
...
...
@@ -62,18 +55,8 @@ public class QueueConsumerJob implements SimpleJob {
.
andWarehouseCodeEqualTo
(
baseQueueMessage
.
getWarehouseCode
())
.
example
());
try
{
AutoTurnoverJob
.
shardingContextThreadLocal
.
set
(
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
null
,
1
,
"NORMAL"
,
new
HashMap
<>(
16
)),
0
));
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
AutoTurnoverJob
.
shardingContextThreadLocal
.
remove
();
AutoTurnoverJob
.
shardingContextThreadLocal
.
set
(
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
null
,
1
,
Constant
.
OCEAN_HEAD
,
new
HashMap
<>(
16
)),
0
));
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
AutoTurnoverJob
.
shardingContextThreadLocal
.
remove
();
AutoTurnoverJob
.
shardingContextThreadLocal
.
set
(
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
null
,
1
,
Constant
.
AIR_HEAD
,
new
HashMap
<>(
16
)),
0
));
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
AutoTurnoverJob
.
shardingContextThreadLocal
.
remove
();
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
dcBaseQueueMapper
.
deleteByPrimaryKey
(
dcBaseQueue
.
getId
());
}
catch
(
Exception
e
)
{
try
{
...
...
data-show/show-auto-turnover/src/main/java/com/bailuntec/job/ReplaceLogisticJob.java
View file @
278a4a92
package
com
.
bailuntec
.
job
;
import
com.bailuntec.domain.constant.CommonConstant
;
import
com.bailuntec.domain.entity.DcAutoReplaceLogisticsTask
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.example.DcAutoReplaceLogisticsTaskExample
;
...
...
@@ -12,9 +11,7 @@ import com.dangdang.ddframe.job.api.ShardingContext;
import
com.dangdang.ddframe.job.api.simple.SimpleJob
;
import
org.apache.ibatis.session.SqlSession
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.List
;
/**
...
...
@@ -52,7 +49,7 @@ public class ReplaceLogisticJob implements SimpleJob {
.
andWarehouseCodeEqualTo
(
dcAutoReplaceLogisticsTask
.
getWarehouseCode
())
.
example
());
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
dcAutoReplaceLogisticsTask
.
setStatus
(
1
);
// dcAutoReplaceLogisticsTaskMapper.deleteByPrimaryKey(dcAutoReplaceLogisticsTask.getId());
}
catch
(
Exception
ex
)
{
...
...
data-show/show-auto-turnover/src/main/java/com/bailuntec/service/impl/TurnoverDaysHandler.java
View file @
278a4a92
...
...
@@ -5,7 +5,6 @@ import com.bailuntec.domain.constant.Constant;
import
com.bailuntec.domain.entity.*
;
import
com.bailuntec.job.AutoTurnoverJob
;
import
com.bailuntec.job.ReplaceLogisticJob
;
import
com.dangdang.ddframe.job.api.ShardingContext
;
import
java.math.BigDecimal
;
...
...
@@ -152,14 +151,14 @@ public class TurnoverDaysHandler {
}
//海运的数据
S
hardingContext
shardingContext
=
AutoTurnoverJob
.
shardingContextThreadLocal
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
S
tring
shardingContext
=
AutoTurnoverJob
.
transferStrategy
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
))
{
transferDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
transferDelivery
=
dcAverageWarehouse
.
getTransferDeliveryOcean
().
intValue
();
}
//空运的数据
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
))
{
transferDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
transferDelivery
=
dcAverageWarehouse
.
getTransferDeliveryEmpty
().
intValue
();
}
...
...
@@ -196,14 +195,14 @@ public class TurnoverDaysHandler {
}
//海运的数据
S
hardingContext
shardingContext
=
AutoTurnoverJob
.
shardingContextThreadLocal
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
S
tring
shardingContext
=
AutoTurnoverJob
.
transferStrategy
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
))
{
transferBaleDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
transferBaleDelivery
=
dcAverageWarehouse
.
getTransferBaleDeliveryOcean
().
intValue
();
}
//空运的数据
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
))
{
transferBaleDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
transferBaleDelivery
=
dcAverageWarehouse
.
getTransferBaleDeliveryOcean
().
intValue
();
}
...
...
@@ -238,14 +237,14 @@ public class TurnoverDaysHandler {
}
//海运的数据
S
hardingContext
shardingContext
=
AutoTurnoverJob
.
shardingContextThreadLocal
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
S
tring
shardingContext
=
AutoTurnoverJob
.
transferStrategy
.
get
();
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
OCEAN_HEAD
.
equals
(
shardingContext
))
{
abroadInboundDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
abroadInboundDelivery
=
dcAverageWarehouse
.
getAbroadInboundDeliveryOcean
().
intValue
();
}
//空运的数据
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
.
getJobParameter
()
))
{
if
(
dcAverageWarehouse
!=
null
&&
Constant
.
AIR_HEAD
.
equals
(
shardingContext
))
{
abroadInboundDeliverySource
=
DcAutoTurnover
.
SOURCE_LMS
;
abroadInboundDelivery
=
dcAverageWarehouse
.
getAbroadInboundDeliveryEmpty
().
intValue
();
}
...
...
data-show/show-auto-turnover/src/test/java/AutoTurnoverTest.java
View file @
278a4a92
...
...
@@ -4,7 +4,6 @@ import com.alibaba.excel.context.AnalysisContext;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.fastjson.JSON
;
import
com.bailuntec.domain.constant.CommonConstant
;
import
com.bailuntec.domain.constant.Constant
;
import
com.bailuntec.domain.entity.DcBaseStock
;
import
com.bailuntec.domain.entity.JobPointLog
;
import
com.bailuntec.domain.entity.SalesDayConfig
;
...
...
@@ -86,7 +85,7 @@ public class AutoTurnoverTest {
}
finally
{
SessionUtil
.
closeSession
();
}
autoTurnoverJob
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
}
@Test
...
...
@@ -103,7 +102,7 @@ public class AutoTurnoverTest {
SessionUtil
.
closeSession
();
}
for
(
DcBaseStock
dcBaseStock
:
dcBaseStockList
)
{
autoTurnoverJob
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
}
}
...
...
@@ -121,7 +120,7 @@ public class AutoTurnoverTest {
SessionUtil
.
closeSession
();
}
for
(
DcBaseStock
dcBaseStock
:
dcBaseStockList
)
{
autoTurnoverJob
.
autoTurnoverFromStock
(
queryTime
,
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
}
}
...
...
@@ -246,7 +245,7 @@ public class AutoTurnoverTest {
.
andWarehouseCodeEqualTo
(
salesDayConfig
.
getWarehouseCode
())
.
example
());
try
{
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
...
...
@@ -271,8 +270,7 @@ public class AutoTurnoverTest {
log
.
info
(
Long
.
toString
(
time
));
// AutoTurnoverJob.shardingContextThreadLocal.set(new ShardingContext(new ShardingContexts("x", null, 8, Constant.AIR_HEAD, new HashMap<>()), 0));
AutoTurnoverJob
.
shardingContextThreadLocal
.
set
(
new
ShardingContext
(
new
ShardingContexts
(
"x"
,
null
,
1
,
"NORMAL"
,
new
HashMap
<>(
16
)),
0
));
autoTurnoverJob
.
autoTurnoverFromStock
(
DateTimeFormatter
.
ofPattern
(
CommonConstant
.
DATE_FORMAT
).
format
(
LocalDate
.
now
()),
dcBaseStock
);
autoTurnoverJob
.
autoTurnoverFromStock
(
dcBaseStock
);
log
.
info
(
String
.
valueOf
((
System
.
currentTimeMillis
()
-
time
)));
}
catch
(
Exception
e
)
{
...
...
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