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
bltdc
dc-java
Commits
f737c22a
Commit
f737c22a
authored
Sep 07, 2019
by
yinyong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
订单新增是否有FBA费用标识,无则取最近sku金额
parent
d606e612
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
132 additions
and
9 deletions
+132
-9
OmsResult.java
...er/src/main/java/com/bailuntec/domain/pojo/OmsResult.java
+3
-0
OrderSyncJob.java
...s-order/src/main/java/com/bailuntec/job/OrderSyncJob.java
+13
-0
DcBaseOmsOrder.java
...main/java/com/bailuntec/domain/entity/DcBaseOmsOrder.java
+14
-1
DcBaseOmsOrderExample.java
...a/com/bailuntec/domain/example/DcBaseOmsOrderExample.java
+60
-0
DcBaseOmsOrderMapper.xml
...c/main/java/com/bailuntec/mapper/DcBaseOmsOrderMapper.xml
+33
-8
DcBaseOmsSkuMapper.java
...rc/main/java/com/bailuntec/mapper/DcBaseOmsSkuMapper.java
+4
-0
DcBaseOmsSkuMapper.xml
...src/main/java/com/bailuntec/mapper/DcBaseOmsSkuMapper.xml
+5
-0
No files found.
data-base/base-sync-oms-order/src/main/java/com/bailuntec/domain/pojo/OmsResult.java
View file @
f737c22a
...
...
@@ -337,4 +337,7 @@ public class OmsResult {
@JSONField
(
name
=
"refund"
)
private
RefundInfo
refundInfo
;
@JSONField
(
name
=
"afterMergedBailunOrderNo"
)
private
String
aftermergedBailunOrderNo
;
}
data-base/base-sync-oms-order/src/main/java/com/bailuntec/job/OrderSyncJob.java
View file @
f737c22a
...
...
@@ -139,6 +139,7 @@ public class OrderSyncJob extends PointJob {
//SKU总个数
dcBaseOmsOrder
.
setQuantityBailunSku
(
bailunSkuCumulative
.
getTotalQuantity
());
//计算每个SKU采购价占总采购价比重(用于摊分SKU售价之类) 以及 每个SKU重量价占总重量的比重
BigDecimal
omsOrderFBAFee
=
BigDecimal
.
valueOf
(
0
);
for
(
BailunSku
bailunSkuObj
:
omsResult
.
getBailunSku
())
{
BailunSkuStructure
bailunSkuStructure
=
new
BailunSkuStructure
();
/*
...
...
@@ -191,8 +192,17 @@ public class OrderSyncJob extends PointJob {
assignmentSkuInfo
(
omsResult
,
dcBaseOmsOrder
,
dcBaseOmsSku
,
bailunSkuObj
,
dcBaseWarehouse
,
logisticsHashMap
,
bailunSkuStructure
);
if
(
PlatformType
.
FBA
.
value
().
equals
(
omsResult
.
getPlatformType
().
toUpperCase
()))
{
//FBA费用
if
(
dcBaseOmsOrder
.
getCostFbaFee
().
compareTo
(
BigDecimal
.
valueOf
(
0
))
==
1
)
{
BigDecimal
skuCostFbaFee
=
bailunSkuStructure
.
getSkuWeightRatio
().
multiply
(
dcBaseOmsOrder
.
getCostFbaFee
()).
setScale
(
5
,
RoundingMode
.
HALF_EVEN
);
dcBaseOmsSku
.
setCostFbaFee
(
skuCostFbaFee
);
dcBaseOmsOrder
.
setHasFbaFee
(
true
);
}
else
{
DcBaseOmsSkuMapper
dcBaseOmsSkuMapper
=
SessionUtil
.
getSession
().
getMapper
(
DcBaseOmsSkuMapper
.
class
);
BigDecimal
FBAFee
=
dcBaseOmsSkuMapper
.
selectFBAFee
(
dcBaseOmsSku
.
getBailunSku
(),
dcBaseOmsSku
.
getWebsite
());
dcBaseOmsSku
.
setCostFbaFee
(
FBAFee
==
null
?
BigDecimal
.
valueOf
(
0
)
:
FBAFee
);
omsOrderFBAFee
=
omsOrderFBAFee
.
add
(
FBAFee
);
dcBaseOmsOrder
.
setHasFbaFee
(
false
);
}
//FBA的发货数不用从配货单信息拿, FBA只要下单亚马逊就发货
dcBaseOmsSku
.
setBailunSkuQuantityShipped
(
bailunSkuObj
.
getBailunSkuQuantityOrdered
());
checkFbaFee
(
dcBaseOmsSku
,
dcBaseOmsOrder
);
...
...
@@ -200,6 +210,9 @@ public class OrderSyncJob extends PointJob {
bailunSkuStructure
.
setDcBaseOmsSku
(
dcBaseOmsSku
);
bailunSkuInfoMap
.
put
(
bailunSkuObj
.
getBailunSku
(),
bailunSkuStructure
);
}
if
(!
dcBaseOmsOrder
.
getHasFbaFee
())
{
dcBaseOmsOrder
.
setCostFbaFee
(
omsOrderFBAFee
);
}
/*
* 按规则计算百伦处理费
* 处理费算到订单维度
...
...
data-common/src/main/java/com/bailuntec/domain/entity/DcBaseOmsOrder.java
View file @
f737c22a
...
...
@@ -881,6 +881,15 @@ public class DcBaseOmsOrder {
private
String
aftermergedBailunOrderNo
;
/**
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column dc_base_oms_order.has_fba_fee
*
* @mbg.generated
*/
private
Boolean
hasFbaFee
;
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dc_base_oms_order
*
...
...
@@ -989,6 +998,7 @@ public class DcBaseOmsOrder {
sb
.
append
(
", hasFbaS="
).
append
(
hasFbaS
);
sb
.
append
(
", amountGeneralCargo="
).
append
(
amountGeneralCargo
);
sb
.
append
(
", aftermergedBailunOrderNo="
).
append
(
aftermergedBailunOrderNo
);
sb
.
append
(
", hasFbaFee="
).
append
(
hasFbaFee
);
sb
.
append
(
"]"
);
return
sb
.
toString
();
}
...
...
@@ -1107,7 +1117,8 @@ public class DcBaseOmsOrder {
&&
(
this
.
getRefundReferenceId
()
==
null
?
other
.
getRefundReferenceId
()
==
null
:
this
.
getRefundReferenceId
().
equals
(
other
.
getRefundReferenceId
()))
&&
(
this
.
getHasFbaS
()
==
null
?
other
.
getHasFbaS
()
==
null
:
this
.
getHasFbaS
().
equals
(
other
.
getHasFbaS
()))
&&
(
this
.
getAmountGeneralCargo
()
==
null
?
other
.
getAmountGeneralCargo
()
==
null
:
this
.
getAmountGeneralCargo
().
equals
(
other
.
getAmountGeneralCargo
()))
&&
(
this
.
getAftermergedBailunOrderNo
()
==
null
?
other
.
getAftermergedBailunOrderNo
()
==
null
:
this
.
getAftermergedBailunOrderNo
().
equals
(
other
.
getAftermergedBailunOrderNo
()));
&&
(
this
.
getAftermergedBailunOrderNo
()
==
null
?
other
.
getAftermergedBailunOrderNo
()
==
null
:
this
.
getAftermergedBailunOrderNo
().
equals
(
other
.
getAftermergedBailunOrderNo
()))
&&
(
this
.
getHasFbaFee
()
==
null
?
other
.
getHasFbaFee
()
==
null
:
this
.
getHasFbaFee
().
equals
(
other
.
getHasFbaFee
()));
}
/**
...
...
@@ -1217,6 +1228,7 @@ public class DcBaseOmsOrder {
result
=
prime
*
result
+
((
getHasFbaS
()
==
null
)
?
0
:
getHasFbaS
().
hashCode
());
result
=
prime
*
result
+
((
getAmountGeneralCargo
()
==
null
)
?
0
:
getAmountGeneralCargo
().
hashCode
());
result
=
prime
*
result
+
((
getAftermergedBailunOrderNo
()
==
null
)
?
0
:
getAftermergedBailunOrderNo
().
hashCode
());
result
=
prime
*
result
+
((
getHasFbaFee
()
==
null
)
?
0
:
getHasFbaFee
().
hashCode
());
return
result
;
}
}
\ No newline at end of file
data-common/src/main/java/com/bailuntec/domain/example/DcBaseOmsOrderExample.java
View file @
f737c22a
...
...
@@ -6640,6 +6640,66 @@ public class DcBaseOmsOrderExample {
addCriterion
(
"aftermerged_bailun_order_no not between"
,
value1
,
value2
,
"aftermergedBailunOrderNo"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeIsNull
()
{
addCriterion
(
"has_fba_fee is null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeIsNotNull
()
{
addCriterion
(
"has_fba_fee is not null"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeEqualTo
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee ="
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeNotEqualTo
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee <>"
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeGreaterThan
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee >"
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeGreaterThanOrEqualTo
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee >="
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeLessThan
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee <"
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeLessThanOrEqualTo
(
Boolean
value
)
{
addCriterion
(
"has_fba_fee <="
,
value
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeIn
(
List
<
Boolean
>
values
)
{
addCriterion
(
"has_fba_fee in"
,
values
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeNotIn
(
List
<
Boolean
>
values
)
{
addCriterion
(
"has_fba_fee not in"
,
values
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeBetween
(
Boolean
value1
,
Boolean
value2
)
{
addCriterion
(
"has_fba_fee between"
,
value1
,
value2
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
public
Criteria
andHasFbaFeeNotBetween
(
Boolean
value1
,
Boolean
value2
)
{
addCriterion
(
"has_fba_fee not between"
,
value1
,
value2
,
"hasFbaFee"
);
return
(
Criteria
)
this
;
}
}
/**
...
...
data-common/src/main/java/com/bailuntec/mapper/DcBaseOmsOrderMapper.xml
View file @
f737c22a
...
...
@@ -103,6 +103,7 @@
<result
column=
"has_fba_s"
jdbcType=
"BIT"
property=
"hasFbaS"
/>
<result
column=
"amount_general_cargo"
jdbcType=
"DECIMAL"
property=
"amountGeneralCargo"
/>
<result
column=
"aftermerged_bailun_order_no"
jdbcType=
"VARCHAR"
property=
"aftermergedBailunOrderNo"
/>
<result
column=
"has_fba_fee"
jdbcType=
"BIT"
property=
"hasFbaFee"
/>
</resultMap>
<sql
id=
"Example_Where_Clause"
>
<!--
...
...
@@ -193,7 +194,7 @@
gmt_modified, quantity_bailun_sku, logistics_warehouse_code, logistics_warehouse_name,
logistics_method_code, logistics_method_name, bailun_picking_status, bailun_require_logistics,
has_scalp, has_innersale, company_id, profit_oms, refund_obj, refund_type, refund_reference_id,
has_fba_s, amount_general_cargo, aftermerged_bailun_order_no
has_fba_s, amount_general_cargo, aftermerged_bailun_order_no
, has_fba_fee
</sql>
<select
id=
"selectByExample"
parameterType=
"com.bailuntec.domain.example.DcBaseOmsOrderExample"
resultMap=
"BaseResultMap"
>
<!--
...
...
@@ -289,7 +290,7 @@
has_scalp, has_innersale, company_id,
profit_oms, refund_obj, refund_type,
refund_reference_id, has_fba_s, amount_general_cargo,
aftermerged_bailun_order_no)
aftermerged_bailun_order_no
, has_fba_fee
)
values (#{id,jdbcType=INTEGER}, #{originOrderId,jdbcType=VARCHAR}, #{platformType,jdbcType=VARCHAR},
#{transactionId,jdbcType=VARCHAR}, #{payTime,jdbcType=TIMESTAMP}, #{payMethod,jdbcType=VARCHAR},
#{payAccount,jdbcType=VARCHAR}, #{payStatus,jdbcType=VARCHAR}, #{collectionAccount,jdbcType=VARCHAR},
...
...
@@ -325,7 +326,7 @@
#{hasScalp,jdbcType=BIT}, #{hasInnersale,jdbcType=BIT}, #{companyId,jdbcType=INTEGER},
#{profitOms,jdbcType=DECIMAL}, #{refundObj,jdbcType=VARCHAR}, #{refundType,jdbcType=VARCHAR},
#{refundReferenceId,jdbcType=VARCHAR}, #{hasFbaS,jdbcType=BIT}, #{amountGeneralCargo,jdbcType=DECIMAL},
#{aftermergedBailunOrderNo,jdbcType=VARCHAR})
#{aftermergedBailunOrderNo,jdbcType=VARCHAR}
, #{hasFbaFee,jdbcType=BIT}
)
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.bailuntec.domain.entity.DcBaseOmsOrder"
>
<!--
...
...
@@ -625,6 +626,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
aftermerged_bailun_order_no,
</if>
<if
test=
"hasFbaFee != null"
>
has_fba_fee,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
...
...
@@ -918,6 +922,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
#{aftermergedBailunOrderNo,jdbcType=VARCHAR},
</if>
<if
test=
"hasFbaFee != null"
>
#{hasFbaFee,jdbcType=BIT},
</if>
</trim>
</insert>
<select
id=
"countByExample"
parameterType=
"com.bailuntec.domain.example.DcBaseOmsOrderExample"
resultType=
"java.lang.Long"
>
...
...
@@ -1228,6 +1235,9 @@
<if
test=
"record.aftermergedBailunOrderNo != null"
>
aftermerged_bailun_order_no = #{record.aftermergedBailunOrderNo,jdbcType=VARCHAR},
</if>
<if
test=
"record.hasFbaFee != null"
>
has_fba_fee = #{record.hasFbaFee,jdbcType=BIT},
</if>
</set>
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
...
...
@@ -1335,7 +1345,8 @@
refund_reference_id = #{record.refundReferenceId,jdbcType=VARCHAR},
has_fba_s = #{record.hasFbaS,jdbcType=BIT},
amount_general_cargo = #{record.amountGeneralCargo,jdbcType=DECIMAL},
aftermerged_bailun_order_no = #{record.aftermergedBailunOrderNo,jdbcType=VARCHAR}
aftermerged_bailun_order_no = #{record.aftermergedBailunOrderNo,jdbcType=VARCHAR},
has_fba_fee = #{record.hasFbaFee,jdbcType=BIT}
<if
test=
"_parameter != null"
>
<include
refid=
"Update_By_Example_Where_Clause"
/>
</if>
...
...
@@ -1635,6 +1646,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR},
</if>
<if
test=
"hasFbaFee != null"
>
has_fba_fee = #{hasFbaFee,jdbcType=BIT},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
...
...
@@ -1739,7 +1753,8 @@
refund_reference_id = #{refundReferenceId,jdbcType=VARCHAR},
has_fba_s = #{hasFbaS,jdbcType=BIT},
amount_general_cargo = #{amountGeneralCargo,jdbcType=DECIMAL},
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR}
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR},
has_fba_fee = #{hasFbaFee,jdbcType=BIT}
where id = #{id,jdbcType=INTEGER}
</update>
<insert
id=
"upsertSelective"
parameterType=
"com.bailuntec.domain.entity.DcBaseOmsOrder"
>
...
...
@@ -2041,6 +2056,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
aftermerged_bailun_order_no,
</if>
<if
test=
"hasFbaFee != null"
>
has_fba_fee,
</if>
</trim>
values
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
...
...
@@ -2335,6 +2353,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
#{aftermergedBailunOrderNo,jdbcType=VARCHAR},
</if>
<if
test=
"hasFbaFee != null"
>
#{hasFbaFee,jdbcType=BIT},
</if>
</trim>
on duplicate key update
<trim
suffixOverrides=
","
>
...
...
@@ -2629,6 +2650,9 @@
<if
test=
"aftermergedBailunOrderNo != null"
>
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR},
</if>
<if
test=
"hasFbaFee != null"
>
has_fba_fee = #{hasFbaFee,jdbcType=BIT},
</if>
</trim>
</insert>
<insert
id=
"upsert"
parameterType=
"com.bailuntec.domain.entity.DcBaseOmsOrder"
>
...
...
@@ -2656,7 +2680,7 @@
gmt_modified, quantity_bailun_sku, logistics_warehouse_code, logistics_warehouse_name,
logistics_method_code, logistics_method_name, bailun_picking_status, bailun_require_logistics,
has_scalp, has_innersale, company_id, profit_oms, refund_obj, refund_type, refund_reference_id,
has_fba_s, amount_general_cargo, aftermerged_bailun_order_no)
has_fba_s, amount_general_cargo, aftermerged_bailun_order_no
, has_fba_fee
)
values
(#{id,jdbcType=INTEGER}, #{originOrderId,jdbcType=VARCHAR}, #{platformType,jdbcType=VARCHAR},
#{transactionId,jdbcType=VARCHAR}, #{payTime,jdbcType=TIMESTAMP}, #{payMethod,jdbcType=VARCHAR},
...
...
@@ -2693,7 +2717,7 @@
#{hasScalp,jdbcType=BIT}, #{hasInnersale,jdbcType=BIT}, #{companyId,jdbcType=INTEGER},
#{profitOms,jdbcType=DECIMAL}, #{refundObj,jdbcType=VARCHAR}, #{refundType,jdbcType=VARCHAR},
#{refundReferenceId,jdbcType=VARCHAR}, #{hasFbaS,jdbcType=BIT}, #{amountGeneralCargo,jdbcType=DECIMAL},
#{aftermergedBailunOrderNo,jdbcType=VARCHAR})
#{aftermergedBailunOrderNo,jdbcType=VARCHAR}
, #{hasFbaFee,jdbcType=BIT}
)
on duplicate key update
id = #{id,jdbcType=INTEGER},
origin_order_id = #{originOrderId,jdbcType=VARCHAR},
...
...
@@ -2791,7 +2815,8 @@
refund_reference_id = #{refundReferenceId,jdbcType=VARCHAR},
has_fba_s = #{hasFbaS,jdbcType=BIT},
amount_general_cargo = #{amountGeneralCargo,jdbcType=DECIMAL},
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR}
aftermerged_bailun_order_no = #{aftermergedBailunOrderNo,jdbcType=VARCHAR},
has_fba_fee = #{hasFbaFee,jdbcType=BIT}
</insert>
<select
id=
"selectOneByExample"
parameterType=
"com.bailuntec.domain.example.DcBaseOmsOrderExample"
resultMap=
"BaseResultMap"
>
<!--
...
...
data-common/src/main/java/com/bailuntec/mapper/DcBaseOmsSkuMapper.java
View file @
f737c22a
...
...
@@ -5,6 +5,7 @@ import com.bailuntec.domain.example.DcBaseOmsSkuExample;
import
com.bailuntec.domain.pojo.FbaFeeSku
;
import
org.apache.ibatis.annotations.Param
;
import
java.math.BigDecimal
;
import
java.util.List
;
public
interface
DcBaseOmsSkuMapper
{
...
...
@@ -127,4 +128,6 @@ public interface DcBaseOmsSkuMapper {
List
<
FbaFeeSku
>
listFbaSku
(
@Param
(
"timeInterval"
)
int
timeInterval
);
List
<
Double
>
listFbaFee
(
@Param
(
"bailunSku"
)
String
bailunSku
,
@Param
(
"website"
)
String
website
,
@Param
(
"timeInterval"
)
int
timeInterval
);
BigDecimal
selectFBAFee
(
@Param
(
"bailunSku"
)
String
bailunSku
,
@Param
(
"webSite"
)
String
webSite
);
}
\ No newline at end of file
data-common/src/main/java/com/bailuntec/mapper/DcBaseOmsSkuMapper.xml
View file @
f737c22a
...
...
@@ -3189,4 +3189,8 @@
SELECT bailun_sku,website FROM dc_base_oms_sku WHERE platform_type='FBA' and paid_time >= DATE_SUB(CURDATE(),INTERVAL #{timeInterval} day) GROUP BY bailun_sku,website
</select>
<select
id=
"selectFBAFee"
resultType=
"java.math.BigDecimal"
>
SELECT cost_fba_fee FROM dc_base_oms_sku WHERE platform_type='FBA' AND bailun_sku=#{bailunSku} AND website=#{webSite} order by paid_time desc limit 1
</select>
</mapper>
\ 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