Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-module-job
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-module-job
Commits
42effad8
提交
42effad8
authored
4月 01, 2025
作者:
吕本才
提交者:
Coding
4月 01, 2025
浏览文件
操作
浏览文件
下载
差异文件
Accept Merge Request #115: (qa -> master)
Merge Request: 修改成本为0的数据问题 Created By: @吕本才 Accepted By: @吕本才 URL:
https://g-pkkp8204.coding.net/p/wangxiaolu-sfa/d/wangxiaolu-sfa-module-job/git/merge/115?initial=true
上级
0567e027
d48a42f4
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
311 行增加
和
29 行删除
+311
-29
FinanceOrderDetailSyncController.java
.../controller/finance/FinanceOrderDetailSyncController.java
+10
-11
FinanceOrderDetailDao.java
...a/com/sfa/job/domain/order/dao/FinanceOrderDetailDao.java
+7
-0
FinianceBaseProductDao.java
.../com/sfa/job/domain/order/dao/FinianceBaseProductDao.java
+3
-0
FinianceBaseProductDaoImpl.java
...job/domain/order/dao/impl/FinianceBaseProductDaoImpl.java
+13
-1
FinianceOrderDetailDaoImpl.java
...job/domain/order/dao/impl/FinianceOrderDetailDaoImpl.java
+13
-0
FinanceOrderDetailMapper.java
...sfa/job/domain/order/mapper/FinanceOrderDetailMapper.java
+9
-0
FinanceOrderCostWq.java
.../java/com/sfa/job/domain/order/wq/FinanceOrderCostWq.java
+15
-0
FinanceBaseProductDto.java
...java/com/sfa/job/pojo/response/FinanceBaseProductDto.java
+56
-0
FinanceOrderDetailListDto.java
.../com/sfa/job/pojo/response/FinanceOrderDetailListDto.java
+66
-0
FinanceOrderDetailUpdateDto.java
...om/sfa/job/pojo/response/FinanceOrderDetailUpdateDto.java
+20
-0
FinanceOrderSyncService.java
...va/com/sfa/job/service/order/FinanceOrderSyncService.java
+2
-1
FinanceOrderSyncServiceImpl.java
...a/job/service/order/impl/FinanceOrderSyncServiceImpl.java
+39
-12
FinanceOrderTask.java
src/main/java/com/sfa/job/xxljob/order/FinanceOrderTask.java
+30
-1
FinanceOrderDetailMapper.xml
src/main/resources/mapper/order/FinanceOrderDetailMapper.xml
+28
-3
没有找到文件。
src/main/java/com/sfa/job/controller/finance/FinanceOrderDetailSyncController.java
浏览文件 @
42effad8
...
...
@@ -2,6 +2,7 @@ package com.sfa.job.controller.finance;
import
cn.hutool.core.date.DateUtil
;
import
com.sfa.common.core.web.controller.BaseController
;
import
com.sfa.job.pojo.response.FinanceOrderDetailUpdateDto
;
import
com.sfa.job.pojo.response.SyncOrderDetailDto
;
import
com.sfa.job.service.order.FinanceOrderSyncService
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -30,19 +31,17 @@ public class FinanceOrderDetailSyncController extends BaseController {
// 可以传参开始时间和结束时间,用于补充特定时间的数据采集
SyncOrderDetailDto
detailDto
=
syncService
.
syncWdtOrder
(
startTime
,
endTime
,
1
);
log
.
info
(
"接口结束同步-旺店通订单明细api接口数据, 共同步订单{}条数据,订单明细{}条,订单批次号:{},订单的开始时间{}和结束时间{}"
,
detailDto
.
getOrderCount
(),
detailDto
.
getOrderDetailCount
(),
detailDto
.
getBatchNo
(),
DateUtil
.
formatDateTime
(
detailDto
.
getStartTime
()),
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
())
);
detailDto
.
getOrderCount
(),
detailDto
.
getOrderDetailCount
(),
detailDto
.
getBatchNo
(),
DateUtil
.
formatDateTime
(
detailDto
.
getStartTime
()),
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
())
);
return
detailDto
;
}
@GetMapping
(
"/update
ZbjType
"
)
public
SyncOrderDetailDto
updateZbjType
(
Date
startTime
,
Date
endTime
)
{
log
.
info
(
"
接口开始同步-旺店通订单明细api接口数据
"
);
@GetMapping
(
"/update
Cost
"
)
public
FinanceOrderDetailUpdateDto
updateCost
(
Date
startTime
,
Date
endTime
)
{
log
.
info
(
"
修改旺店通订单明细数据开始
"
);
// 可以传参开始时间和结束时间,用于补充特定时间的数据采集
SyncOrderDetailDto
detailDto
=
syncService
.
updateZbjType
(
startTime
,
endTime
);
log
.
info
(
"接口结束同步-旺店通订单明细api接口数据, 共同步订单{}条数据,订单明细{}条,订单批次号:{},订单的开始时间{}和结束时间{}"
,
detailDto
.
getOrderCount
(),
detailDto
.
getOrderDetailCount
(),
detailDto
.
getBatchNo
(),
DateUtil
.
formatDateTime
(
detailDto
.
getStartTime
()),
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
())
);
FinanceOrderDetailUpdateDto
detailDto
=
syncService
.
updateCost
(
startTime
,
endTime
);
log
.
info
(
"修改旺店通订单明细结束-旺店通订单明细api接口数据, 共修改订单数{}条数据"
,
detailDto
.
getTotalCount
());
return
detailDto
;
}
...
...
@@ -52,8 +51,8 @@ public class FinanceOrderDetailSyncController extends BaseController {
// 可以传参开始时间和结束时间,用于补充特定时间的数据采集
SyncOrderDetailDto
detailDto
=
syncService
.
syncWdtRefundOrder
(
startTime
,
endTime
,
1
);
log
.
info
(
"结束接口同步-旺店通退换订单明细api接口数据, 共同步退换货订单{}条数据,退换货订单明细{}条,退换货同步批次号:{},订单的开始时间{}和结束时间{},数量:{}"
,
detailDto
.
getOrderCount
(),
detailDto
.
getOrderDetailCount
(),
detailDto
.
getBatchNo
(),
DateUtil
.
formatDateTime
(
detailDto
.
getStartTime
()),
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
()),
detailDto
.
getRemark
()
);
detailDto
.
getOrderCount
(),
detailDto
.
getOrderDetailCount
(),
detailDto
.
getBatchNo
(),
DateUtil
.
formatDateTime
(
detailDto
.
getStartTime
()),
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
()),
detailDto
.
getRemark
()
);
return
detailDto
;
}
...
...
src/main/java/com/sfa/job/domain/order/dao/FinanceOrderDetailDao.java
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
domain
.
order
.
dao
;
import
com.sfa.job.domain.order.entity.FinanceOrderDetail
;
import
com.sfa.job.domain.order.wq.FinanceOrderCostWq
;
import
com.sfa.job.pojo.response.FinanceOrderDetailListDto
;
import
java.util.Date
;
import
java.util.List
;
public
interface
FinanceOrderDetailDao
{
void
saveOrUpdateBatch
(
List
<
FinanceOrderDetail
>
mergeList
);
List
<
FinanceOrderDetailListDto
>
selectErrorCost
(
Date
startTime
,
Date
endTime
);
void
updateCost
(
FinanceOrderCostWq
financeOrderCostWq
);
}
src/main/java/com/sfa/job/domain/order/dao/FinianceBaseProductDao.java
浏览文件 @
42effad8
...
...
@@ -2,9 +2,12 @@ package com.sfa.job.domain.order.dao;
import
com.sfa.job.domain.order.entity.FinanceBaseProduct
;
import
java.util.List
;
import
java.util.Map
;
public
interface
FinianceBaseProductDao
{
Map
<
String
,
FinanceBaseProduct
>
selectBaseProduct
();
Map
<
String
,
FinanceBaseProduct
>
selectBaseProductCost
(
List
<
String
>
goodNos
);
}
src/main/java/com/sfa/job/domain/order/dao/impl/FinianceBaseProductDaoImpl.java
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
domain
.
order
.
dao
.
impl
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.sfa.job.domain.order.dao.FinianceBaseProductDao
;
...
...
@@ -22,10 +23,21 @@ public class FinianceBaseProductDaoImpl implements FinianceBaseProductDao {
@Override
public
Map
<
String
,
FinanceBaseProduct
>
selectBaseProduct
()
{
// 查询所有商品
List
<
FinanceBaseProduct
>
list
=
mapper
.
selectList
(
new
LambdaQueryWrapper
<>())
;
List
<
FinanceBaseProduct
>
list
=
mapper
.
selectList
(
new
LambdaQueryWrapper
<>());
// 以料号为key,商品对象为value,放入map中
Map
<
String
,
FinanceBaseProduct
>
map
=
list
.
stream
()
.
collect
(
HashMap:
:
new
,
(
k
,
v
)
->
k
.
put
(
v
.
getPrdCode
(),
v
),
HashMap:
:
putAll
);
return
map
;
}
@Override
public
Map
<
String
,
FinanceBaseProduct
>
selectBaseProductCost
(
List
<
String
>
goodNos
)
{
List
<
FinanceBaseProduct
>
prdInfos
=
mapper
.
selectList
(
new
LambdaQueryWrapper
<
FinanceBaseProduct
>()
.
in
(
ObjectUtil
.
isNotEmpty
(
goodNos
),
FinanceBaseProduct:
:
getPrdCode
,
goodNos
));
Map
<
String
,
FinanceBaseProduct
>
map
=
prdInfos
.
stream
()
.
collect
(
HashMap:
:
new
,
(
k
,
v
)
->
k
.
put
(
v
.
getPrdCode
(),
v
),
HashMap:
:
putAll
);
return
map
;
}
}
src/main/java/com/sfa/job/domain/order/dao/impl/FinianceOrderDetailDaoImpl.java
浏览文件 @
42effad8
...
...
@@ -4,9 +4,12 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import
com.sfa.job.domain.order.dao.FinanceOrderDetailDao
;
import
com.sfa.job.domain.order.entity.FinanceOrderDetail
;
import
com.sfa.job.domain.order.mapper.FinanceOrderDetailMapper
;
import
com.sfa.job.domain.order.wq.FinanceOrderCostWq
;
import
com.sfa.job.pojo.response.FinanceOrderDetailListDto
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Repository
;
import
java.util.Date
;
import
java.util.List
;
@DS
(
"bi"
)
...
...
@@ -25,4 +28,14 @@ public class FinianceOrderDetailDaoImpl implements FinanceOrderDetailDao {
financeOrderDetailMapper
.
saveOrUpdateBatch
(
batchLists
);
}
}
@Override
public
void
updateCost
(
FinanceOrderCostWq
wq
)
{
financeOrderDetailMapper
.
updateCost
(
wq
);
}
@Override
public
List
<
FinanceOrderDetailListDto
>
selectErrorCost
(
Date
startTime
,
Date
endTime
)
{
return
financeOrderDetailMapper
.
selectErrorCost
(
startTime
,
endTime
);
}
}
src/main/java/com/sfa/job/domain/order/mapper/FinanceOrderDetailMapper.java
浏览文件 @
42effad8
...
...
@@ -3,13 +3,22 @@ package com.sfa.job.domain.order.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.sfa.job.domain.order.entity.FinanceOrderDetail
;
import
com.sfa.job.domain.order.wq.FinanceOrderCostWq
;
import
com.sfa.job.pojo.response.FinanceOrderDetailListDto
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.Date
;
import
java.util.List
;
@Mapper
public
interface
FinanceOrderDetailMapper
extends
BaseMapper
<
FinanceOrderDetail
>
{
void
saveOrUpdateBatch
(
@Param
(
value
=
"list"
)
List
<
FinanceOrderDetail
>
mergeList
);
void
updateCost
(
FinanceOrderCostWq
wq
);
List
<
FinanceOrderDetailListDto
>
selectErrorCost
(
@Param
(
value
=
"startTime"
)
Date
startTime
,
@Param
(
value
=
"endTime"
)
Date
endTime
);
}
src/main/java/com/sfa/job/domain/order/wq/FinanceOrderCostWq.java
0 → 100644
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
domain
.
order
.
wq
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.Date
;
@Data
public
class
FinanceOrderCostWq
{
private
String
goodsNo
;
private
BigDecimal
actualCost
;
private
BigDecimal
standardCost
;
private
Date
startTime
;
private
Date
endTime
;
}
src/main/java/com/sfa/job/pojo/response/FinanceBaseProductDto.java
0 → 100644
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
pojo
.
response
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* finance_base_product 表对应的 料号基本信息表。
* 主要字段实际成本、标准成本、规格、口味
* @author lvbencai
* @date 2025年01月07日10:04:25
*/
@Data
public
class
FinanceBaseProductDto
{
// 唯一标识主键
private
Integer
fbpId
;
// 料号
private
String
prdCode
;
// 品名
private
String
prdName
;
// 规格
private
String
prdBarCode
;
// 实际成本
private
BigDecimal
actualCost
;
// 标准成本
private
BigDecimal
standardCost
;
// 一级分类
private
String
firstCategory
;
// 二级分类
private
String
secondCategory
;
// 规格
private
String
spec
;
// 口味
private
String
flavor
;
// 系列
private
String
series
;
// 产品分类编码
private
String
productClassificationCode
;
// 产品分类
private
String
productClassification
;
// 主分群码(重复字段,可根据实际需求调整)
private
String
mainGroupCode
;
// 主分群码名称
private
String
mainGroupName
;
// 料件类别(重复字段,可根据实际需求调整)
private
String
materialType
;
// 料件类别描述
private
String
materialTypeName
;
// 基础单位
private
String
basicUnit
;
// 生命周期状态
private
String
lifeCycleStatus
;
// 生命周期
private
String
lifeCycle
;
}
src/main/java/com/sfa/job/pojo/response/FinanceOrderDetailListDto.java
0 → 100644
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
pojo
.
response
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* 财务聚合后查看的详情信息,来自订单明细DTO
* @date : 2025-01-15 17:01:00
* @author : lvbencai
*/
@Data
public
class
FinanceOrderDetailListDto
{
// 订单编号
private
String
tradeNo
;
// 店铺名称
private
String
shopName
;
// 原始单号
private
String
srcTid
;
// 原始子单号
private
String
srcOid
;
// 订单状态
private
String
tradeStatus
;
// 交易时间
private
String
tradeTime
;
// 付款时间
private
Date
payTime
;
// 发货时间
private
Date
consignTime
;
// 省市县(收货地区)
private
String
receiverArea
;
// 备注
private
String
remark
;
// 应收金额
private
BigDecimal
receivable
;
// 货品编号
private
String
goodsNo
;
// 货品名称
private
String
goodsName
;
// 规格名称
private
String
specName
;
// 分类(货品类型)
private
Integer
goodsType
;
// 数量
private
BigDecimal
num
;
// 优惠
private
BigDecimal
discount
;
// 分摊后总价
private
BigDecimal
shareAmount
;
// 组合装编码
private
String
suiteNo
;
// 组合装名称
private
String
suiteName
;
// 组合装数量
private
BigDecimal
suiteNum
;
// 赠品方式
private
Integer
giftType
;
// 分销商名称
private
String
fenxiaoName
;
// 分销商编号
private
String
fenxiaoId
;
// 平台货品名称
private
String
apiGoodsName
;
}
src/main/java/com/sfa/job/pojo/response/FinanceOrderDetailUpdateDto.java
0 → 100644
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
pojo
.
response
;
import
lombok.Data
;
import
java.util.List
;
/**
* 财务同步旺店通修改结果
*
* @author : lvbencai
* @date : 2025-03-25
*/
@Data
public
class
FinanceOrderDetailUpdateDto
{
private
List
<
String
>
errorList
;
private
List
<
FinanceOrderDetailListDto
>
errorDetailList
;
private
int
totalCount
;
}
src/main/java/com/sfa/job/service/order/FinanceOrderSyncService.java
浏览文件 @
42effad8
package
com
.
sfa
.
job
.
service
.
order
;
import
com.sfa.job.pojo.response.FinanceOrderDetailUpdateDto
;
import
com.sfa.job.pojo.response.SyncOrderDetailDto
;
import
java.util.Date
;
...
...
@@ -10,5 +11,5 @@ public interface FinanceOrderSyncService {
SyncOrderDetailDto
syncWdtRefundOrder
(
Date
startTime
,
Date
endTime
,
Integer
syncType
);
SyncOrderDetailDto
updateZbjType
(
Date
startTime
,
Date
endTime
);
FinanceOrderDetailUpdateDto
updateCost
(
Date
startTime
,
Date
endTime
);
}
src/main/java/com/sfa/job/service/order/impl/FinanceOrderSyncServiceImpl.java
浏览文件 @
42effad8
...
...
@@ -11,11 +11,10 @@ import com.sfa.common.core.exception.ServiceException;
import
com.sfa.common.core.utils.DateUtils
;
import
com.sfa.job.domain.order.dao.*
;
import
com.sfa.job.domain.order.entity.*
;
import
com.sfa.job.domain.order.wq.FinanceOrderCostWq
;
import
com.sfa.job.pojo.request.WdtOrderQueryVO
;
import
com.sfa.job.pojo.request.WdtRefundQueryVO
;
import
com.sfa.job.pojo.response.CollectOrderLogDto
;
import
com.sfa.job.pojo.response.SyncOrderDetailDto
;
import
com.sfa.job.pojo.response.WangdiantongQueryDto
;
import
com.sfa.job.pojo.response.*
;
import
com.sfa.job.service.order.FinanceOrderSyncService
;
import
com.sfa.job.util.WangdiantongUtil
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -26,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* 旺店通订单Service业务层处理
...
...
@@ -326,11 +326,42 @@ public class FinanceOrderSyncServiceImpl implements FinanceOrderSyncService {
* @return
*/
@Override
public
SyncOrderDetailDto
updateZbjType
(
Date
startTime
,
Date
endTime
)
{
// 循环查询订单
return
null
;
public
FinanceOrderDetailUpdateDto
updateCost
(
Date
startTime
,
Date
endTime
)
{
// 查询有问题的goods_no
List
<
FinanceOrderDetailListDto
>
errorCostDetails
=
orderDetailDao
.
selectErrorCost
(
startTime
,
endTime
);
List
<
String
>
errorGoodsNos
=
new
ArrayList
<>();
if
(
ObjectUtil
.
isNotEmpty
(
errorCostDetails
)){
List
<
String
>
goodNos
=
errorCostDetails
.
stream
().
map
(
FinanceOrderDetailListDto:
:
getGoodsNo
).
collect
(
Collectors
.
toList
());
// 有问题的料号数据,查询产品基础信息表
Map
<
String
,
FinanceBaseProduct
>
productMap
=
baseProductDao
.
selectBaseProductCost
(
goodNos
);
// 查询当前的成本数据
for
(
int
i
=
0
;
i
<
goodNos
.
size
();
i
++)
{
String
goodsNo
=
goodNos
.
get
(
i
);
FinanceBaseProduct
financeBaseProduct
=
productMap
.
get
(
goodsNo
);
if
(
ObjectUtil
.
isNotEmpty
(
financeBaseProduct
)
&&
financeBaseProduct
.
getActualCost
().
compareTo
(
new
BigDecimal
(
"0"
))>
0
){
// 循环修改数据
BigDecimal
actualCost
=
financeBaseProduct
.
getActualCost
();
BigDecimal
standardCost
=
financeBaseProduct
.
getStandardCost
();
FinanceOrderCostWq
financeOrderCostWq
=
new
FinanceOrderCostWq
();
financeOrderCostWq
.
setGoodsNo
(
goodsNo
);
financeOrderCostWq
.
setActualCost
(
actualCost
);
financeOrderCostWq
.
setStandardCost
(
standardCost
);
financeOrderCostWq
.
setStartTime
(
startTime
);
financeOrderCostWq
.
setEndTime
(
endTime
);
orderDetailDao
.
updateCost
(
financeOrderCostWq
);
}
else
{
log
.
error
(
"料号{}没有查询到数据"
,
goodsNo
);
errorGoodsNos
.
add
(
goodsNo
);
}
}
}
FinanceOrderDetailUpdateDto
updateDto
=
new
FinanceOrderDetailUpdateDto
();
updateDto
.
setErrorList
(
errorGoodsNos
);
updateDto
.
setTotalCount
(
errorCostDetails
.
size
());
updateDto
.
setErrorDetailList
(
errorCostDetails
);
return
updateDto
;
}
/**
...
...
@@ -377,11 +408,7 @@ public class FinanceOrderSyncServiceImpl implements FinanceOrderSyncService {
private
boolean
validateStartTime
(
SyncOrderDetailDto
detailDto
)
{
Date
currentLatest
=
DateUtils
.
addHours
(
new
Date
(),
-
2
);
if
(
currentLatest
.
compareTo
(
detailDto
.
getEndTime
())
<
0
)
{
// SyncOrderDetailDto detailDto = new SyncOrderDetailDto();
detailDto
.
setTotalCount
(
0
);
// detailDto.setBatchNo(batchNo);
// detailDto.setStartTime(startTime);
// detailDto.setEndTime(endTime);
String
message
=
String
.
format
(
"结束时间%s不能大于当前时间%s"
,
DateUtil
.
formatDateTime
(
detailDto
.
getEndTime
()),
DateUtil
.
formatDateTime
(
currentLatest
));
detailDto
.
setMessage
(
message
);
log
.
warn
(
message
);
...
...
src/main/java/com/sfa/job/xxljob/order/FinanceOrderTask.java
浏览文件 @
42effad8
...
...
@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.http.HttpStatus
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.sfa.job.pojo.response.FinanceOrderDetailUpdateDto
;
import
com.sfa.job.pojo.response.SyncOrderDetailDto
;
import
com.sfa.job.service.order.FinanceOrderSyncService
;
import
com.xxl.job.core.context.XxlJobContext
;
...
...
@@ -13,6 +14,8 @@ import lombok.extern.slf4j.Slf4j;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.Date
;
/**
* @author : 吕本才
* @date : 2025-01-15 13:03:51
...
...
@@ -54,7 +57,7 @@ public class FinanceOrderTask {
return
detailDto
;
}
/**
* 同步
部门
数据
* 同步
退换货
数据
*/
@XxlJob
(
"syncWdtRefundOrder"
)
public
SyncOrderDetailDto
syncWdtRefundOrder
()
{
...
...
@@ -83,4 +86,30 @@ public class FinanceOrderTask {
}
return
detailDto
;
}
/**
* 定时修改成本为0的订单数据
*/
@XxlJob
(
"syncUpdateCost"
)
public
FinanceOrderDetailUpdateDto
syncUpdateCost
()
{
// 暂不考虑分片
XxlJobContext
xxlJobContext
=
XxlJobContext
.
getXxlJobContext
();
int
shardingTotalCount
=
xxlJobContext
.
getShardTotal
();
int
shardingItem
=
xxlJobContext
.
getShardIndex
();
XxlJobHelper
.
log
(
">>>>>>>>>>syncWangdiantongOrderDetail Job start<<<<<<<<<<"
);
// 简单模拟分片处理,这里输出每个分片的信息
XxlJobHelper
.
log
(
"分片总数: "
+
shardingTotalCount
+
", 当前分片: "
+
shardingItem
);
XxlJobHelper
.
log
(
"xxl-job开始同步-旺店通订单明细api接口数据"
);
// 定时任务不设定开始时间和结束时间
Date
startTime
=
DateUtil
.
beginOfDay
(
DateUtil
.
offsetDay
(
new
Date
(),-
1
));
Date
endTime
=
DateUtil
.
endOfDay
(
DateUtil
.
offsetDay
(
new
Date
(),-
1
));
FinanceOrderDetailUpdateDto
detailDto
=
financeOrderSyncService
.
updateCost
(
startTime
,
endTime
);
XxlJobHelper
.
log
(
"修改旺店通订单明细结束-旺店通订单明细api接口数据, 共修改订单数{}条数据"
,
detailDto
.
getTotalCount
());
XxlJobHelper
.
handleSuccess
(
JSONObject
.
toJSONString
(
detailDto
));
return
detailDto
;
}
}
src/main/resources/mapper/order/FinanceOrderDetailMapper.xml
浏览文件 @
42effad8
...
...
@@ -27,7 +27,7 @@
#{item.receiverArea}, #{item.zbjName}, #{item.zbjId}, #{item.zbjZbId}, #{item.zbjSaleType},
#{item.zbjQdType}, #{item.receivable}, #{item.specNameErp}, #{item.flavorErp},
#{item.syncType}, #{item.actualCost}, #{item.standardCost}, #{item.sumActualCost}, #{item.sumStandardCost},
#{item.series}, #{item.delFlag}
#{item.series}, #{item.delFlag}
)
</foreach>
...
...
@@ -127,7 +127,8 @@
<!-- 根据 rec_id 查询单条记录 -->
<select
id=
"selectByRecId"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
></include>
select
<include
refid=
"Base_Column_List"
></include>
from finance_order_detail
where rec_id = #{recId}
</select>
...
...
@@ -142,7 +143,8 @@
<sql
id=
"Base_Column_List"
>
trade_id, rec_id, platform_id, src_oid, src_tid, pay_status, refund_status, platform_status, delivery_term,
trade_id
, rec_id, platform_id, src_oid, src_tid, pay_status, refund_status, platform_status, delivery_term,
num, price, refund_num, order_price, share_price, adjust, discount, share_amount, tax_rate,
goods_name, goods_no, spec_name, spec_no, spec_code, suite_no, suite_name, suite_num, suite_amount,
suite_discount, api_goods_name, api_spec_name, api_goods_id, api_spec_id, goods_id, spec_id,
...
...
@@ -248,4 +250,27 @@
<result
column=
"sum_actual_cost"
property=
"sumActualCost"
jdbcType=
"DECIMAL"
/>
<result
column=
"sum_standard_cost"
property=
"sumStandardCost"
jdbcType=
"DECIMAL"
/>
</resultMap>
<update
id=
"updateCost"
parameterType=
"com.sfa.job.domain.order.wq.FinanceOrderCostWq"
>
update finance_order_detail fod
set fod.actual_cost =#{actualCost},
fod.standard_cost =#{standardCost},
fod.sum_actual_cost = #{actualCost} * num,
fod.sum_standard_cost = #{standardCost} * num
where shop_no IN ('016', '070', '091')
and fod.consign_time between #{startTime} and #{endTime}
and refund_status != 5 and fod.actual_cost =0
AND fod.goods_no =#{goodsNo}
</update>
<!-- 查询成本为0的订单详情-->
<select
id=
"selectErrorCost"
resultType=
"com.sfa.job.pojo.response.FinanceOrderDetailListDto"
>
select distinct fod.goods_no as goodsNo,
fod.goods_name as goodsName
from finance_order_detail fod
where shop_no IN ('016', '070', '091')
and fod.consign_time between #{startTime} and #{endTime}
and refund_status!= 5 and fod.actual_cost =0
</select>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论