Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Q
qk_backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
quanku
qk_backend
Commits
c37447a0
Commit
c37447a0
authored
May 11, 2024
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
后台鉴定单审核流程
parent
45f39837
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
141 additions
and
28 deletions
+141
-28
ch-admin-api/src/main/java/com/wwdz/ch/admin/config/ShiroConfig.java
...i/src/main/java/com/wwdz/ch/admin/config/ShiroConfig.java
+2
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/entity/vo/SysDistributionOrderVo.java
...a/com/wwdz/ch/admin/entity/vo/SysDistributionOrderVo.java
+10
-0
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/SysIdentifyOrderServiceImpl.java
...a/com/wwdz/ch/admin/impl/SysIdentifyOrderServiceImpl.java
+36
-11
ch-core/src/main/java/com/wwdz/ch/core/consts/CommConsts.java
...ore/src/main/java/com/wwdz/ch/core/consts/CommConsts.java
+9
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/api/WxPayCallbackController.java
...main/java/com/wwdz/ch/wx/api/WxPayCallbackController.java
+7
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/DistributionOrderDetailVo.java
.../wx/entity/vo/distribution/DistributionOrderDetailVo.java
+39
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
...ch/wx/impl/distribution/DistributionOrderServiceImpl.java
+21
-11
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/IdentifyOrderServiceImpl.java
...wdz/ch/wx/impl/distribution/IdentifyOrderServiceImpl.java
+15
-3
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/IdentifyOrderService.java
...wwdz/ch/wx/service/distribution/IdentifyOrderService.java
+2
-2
No files found.
ch-admin-api/src/main/java/com/wwdz/ch/admin/config/ShiroConfig.java
View file @
c37447a0
...
...
@@ -123,6 +123,8 @@ public class ShiroConfig {
filterChainDefinitionMap
.
put
(
"/admin/user/**"
,
"anon"
);
filterChainDefinitionMap
.
put
(
"/admin/sysDistributionOrder/**"
,
"anon"
);
filterChainDefinitionMap
.
put
(
"/admin/imageCatelog/**"
,
"anon"
);
filterChainDefinitionMap
.
put
(
"/admin/identifyOrder/**"
,
"anon"
);
filterChainDefinitionMap
.
put
(
"/admin/invitationCode/**"
,
"anon"
);
// filterChainDefinitionMap.put("/admin/**", "anon");
...
...
ch-admin-api/src/main/java/com/wwdz/ch/admin/entity/vo/SysDistributionOrderVo.java
View file @
c37447a0
...
...
@@ -14,6 +14,11 @@ public class SysDistributionOrderVo implements Entity {
*/
private
String
distributionOrderId
;
/**
* 鉴定单号
*/
private
String
identifyOrderId
;
/**
* 预支付id
*/
...
...
@@ -208,6 +213,11 @@ public class SysDistributionOrderVo implements Entity {
*/
private
Integer
approved
;
/**
* 不通过原因
*/
private
String
approvedRemark
;
/**
* 退回收货人名称
...
...
ch-admin-api/src/main/java/com/wwdz/ch/admin/impl/SysIdentifyOrderServiceImpl.java
View file @
c37447a0
...
...
@@ -43,10 +43,7 @@ import org.springframework.util.StringUtils;
import
java.time.Duration
;
import
java.time.Instant
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
...
...
@@ -124,6 +121,7 @@ public class SysIdentifyOrderServiceImpl implements SysIdentifyOrderService {
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
identifyOrder
.
getItemId
());
distributionOrderVo
.
setItemName
(
supplierItem
.
getName
());
long
itemPrice
=
distributionOrder
.
getAmount
()
/
distributionOrder
.
getItemNum
();
distributionOrderVo
.
setIdentifyOrderId
(
identifyOrder
.
getIdentifyOrderId
());
distributionOrderVo
.
setAmount
(
PriceUtil
.
convertPriceFenToYuan
(
distributionOrder
.
getAmount
()));
distributionOrderVo
.
setReturnName
(
identifyOrder
.
getReturnName
());
distributionOrderVo
.
setReturnPhone
(
identifyOrder
.
getReturnPhone
());
...
...
@@ -150,10 +148,40 @@ public class SysIdentifyOrderServiceImpl implements SysIdentifyOrderService {
@Override
public
Result
findDetail
(
IdentifyOrderRequestDto
dto
)
{
try
{
IdentifyOrder
identifyOrder
=
identifyOrderDao
.
findByDistributionOrderId
(
dto
.
getDistributionOrderId
());
DistributionOrder
distributionOrder
=
distributionOrderDao
.
findById
(
dto
.
getDistributionOrderId
());
SysDistributionOrderVo
distributionOrderVo
=
new
SysDistributionOrderVo
();
EntityMapper
.
copyAttribute
(
distributionOrder
,
distributionOrderVo
);
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
identifyOrder
.
getItemId
());
distributionOrderVo
.
setItemName
(
supplierItem
.
getName
());
long
itemPrice
=
distributionOrder
.
getAmount
()
/
distributionOrder
.
getItemNum
();
distributionOrderVo
.
setAmount
(
PriceUtil
.
convertPriceFenToYuan
(
distributionOrder
.
getAmount
()));
distributionOrderVo
.
setReturnName
(
identifyOrder
.
getReturnName
());
distributionOrderVo
.
setReturnPhone
(
identifyOrder
.
getReturnPhone
());
distributionOrderVo
.
setReturnAddress
(
identifyOrder
.
getReturnAddress
());
distributionOrderVo
.
setItemPrice
(
PriceUtil
.
convertPriceFenToYuan
(
itemPrice
));
distributionOrderVo
.
setStateName
(
DistributionEnum
.
DistributionOrderStateEnum
.
getNameByCode
(
identifyOrder
.
getState
()));
distributionOrderVo
.
setTypeName
(
DistributionEnum
.
DistributionTypeEnum
.
getNameByCode
(
distributionOrder
.
getType
()));
distributionOrderVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
distributionOrderVo
.
setLogisticsName
(
LogisticsEnum
.
getNameByCode
(
distributionOrder
.
getLogisticsCode
()));
distributionOrderVo
.
setBuyerName
(
cacheUtil
.
getAppletUserNameById
(
distributionOrder
.
getBuyerId
()));
distributionOrderVo
.
setTransferState
(
identifyOrder
.
getState
());
distributionOrderVo
.
setTransferStateName
(
DistributionEnum
.
IdentifyOrderStateEnum
.
getNameByCode
(
identifyOrder
.
getState
()));
distributionOrderVo
.
setApproved
(
identifyOrder
.
getApproved
());
distributionOrderVo
.
setApprovedRemark
(
identifyOrder
.
getRemark
());
distributionOrderVo
.
setSellerName
(
identifyOrder
.
getSellerId
()
==
CommConsts
.
SYSTEM_ACCOUNT
.
longValue
()?
"系统账号"
:
cacheUtil
.
getAppletUserNameById
(
identifyOrder
.
getSellerId
()));
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"data"
,
distributionOrderVo
);
//查询物流信息
String
fromLogisticsInfo
=
LogisticsEnum
.
getNameByCode
(
identifyOrder
.
getFromLogisticsCode
())
+
","
+
identifyOrder
.
getFromWaybill
();
String
deliveryLogisticsInfo
=
LogisticsEnum
.
getNameByCode
(
distributionOrder
.
getLogisticsCode
())
+
","
+
distributionOrder
.
getWaybill
();
String
returnLogisticsInfo
=
LogisticsEnum
.
getNameByCode
(
identifyOrder
.
getOutLogisticsCode
())
+
","
+
identifyOrder
.
getOutWaybill
();
map
.
put
(
"fromLogisticsInfo"
,
fromLogisticsInfo
.
length
()
<
11
?
null
:
fromLogisticsInfo
);
map
.
put
(
"deliveryLogisticsInfo"
,
deliveryLogisticsInfo
.
length
()
<
11
?
null
:
deliveryLogisticsInfo
);
map
.
put
(
"returnLogisticsInfo"
,
returnLogisticsInfo
.
length
()
<
11
?
null
:
returnLogisticsInfo
);
return
Result
.
success
(
map
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"鉴定单审核 error:{}"
,
e
);
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
logger
.
error
(
"鉴定单详情 error:{}"
,
e
);
}
return
Result
.
failed
();
}
...
...
@@ -177,9 +205,6 @@ public class SysIdentifyOrderServiceImpl implements SysIdentifyOrderService {
DistributionOrderRequestDto
distributionOrderRequestDto
=
new
DistributionOrderRequestDto
();
distributionOrderRequestDto
.
setDistributionOrderId
(
dto
.
getDistributionOrderId
());
refund
(
distributionOrderRequestDto
);
/*
distributionOrderDao.updateState(dto.getDistributionOrderId(), DistributionEnum.DistributionOrderStateEnum.CANCEL.getCode());
distributorProfitDao.updateValidState(dto.getDistributionOrderId(), false);*/
}
identifyOrder
.
setUpdateTime
(
new
Date
());
identifyOrderDao
.
update
(
identifyOrder
);
...
...
@@ -250,7 +275,7 @@ public class SysIdentifyOrderServiceImpl implements SysIdentifyOrderService {
//修改鉴定单状态
IdentifyOrder
identifyOrder
=
new
IdentifyOrder
();
identifyOrder
.
setIdentifyOrderId
(
dto
.
getIdentifyOrderId
());
identifyOrder
.
setState
(
DistributionEnum
.
IdentifyOrderStateEnum
.
CHANNEL_
SEND
ED
.
getCode
());
identifyOrder
.
setState
(
DistributionEnum
.
IdentifyOrderStateEnum
.
CHANNEL_
RETURN
ED
.
getCode
());
identifyOrder
.
setOutLogisticsCode
(
dto
.
getOutLogisticsCode
());
identifyOrder
.
setOutWaybill
(
dto
.
getOutWaybill
());
identifyOrderDao
.
update
(
identifyOrder
);
...
...
ch-core/src/main/java/com/wwdz/ch/core/consts/CommConsts.java
View file @
c37447a0
...
...
@@ -55,6 +55,14 @@ public interface CommConsts {
*/
public
static
final
String
DEFAULT_BACKGROUND_URL
=
"https://cdn.wanwudezhi.com/static/web-static/image/1c679aa4e27789e491c070d52577efb1_1125x480.png"
;
/**
* 退款单前缀
*/
public
final
static
String
REFUND_ORDER_PREFIX
=
"RF"
;
/**
* 平台中转鉴定单前缀
*/
public
final
static
String
IDENTIFY_ORDER_PREFIX
=
"IE"
;
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/api/WxPayCallbackController.java
View file @
c37447a0
...
...
@@ -21,6 +21,8 @@ import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import
com.wwdz.ch.core.entity.DistributionOrderNoticeMsg
;
import
com.wwdz.ch.core.entity.PayNoticeMsg
;
import
com.wwdz.ch.core.service.SendMsgService
;
import
com.wwdz.ch.db.dto.request.distribution.IdentifyOrderRequestDto
;
import
com.wwdz.ch.wx.service.distribution.IdentifyOrderService
;
import
com.wwdz.ch.wx.service.distribution.SupplierItemService
;
import
com.xxdxxs.utils.JsonUtils
;
import
com.xxdxxs.utils.StringUtils
;
...
...
@@ -89,6 +91,9 @@ public class WxPayCallbackController {
@Autowired
WxAppletApi
wxAppletApi
;
@Autowired
IdentifyOrderService
identifyOrderService
;
@RequestMapping
(
value
=
"/getPayNotify"
)
public
String
payNotify
(
HttpServletRequest
request
)
throws
IOException
{
logger
.
info
(
"------------------ 收到微信支付回调通知 ------------------"
);
...
...
@@ -348,6 +353,8 @@ public class WxPayCallbackController {
String
msg
=
"您的藏馆收到一个新订单,请前往"
+
url
+
"查看"
;
aliSmsSender
.
sendSms
(
distributionOrder
.
getSellerId
(),
msg
);
}
//创建鉴定单
identifyOrderService
.
createIdentifyOrder
(
distributionOrderId
);
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>> 藏馆订单,微信支付回调通知处理失败 error :{}"
,
e
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/DistributionOrderDetailVo.java
View file @
c37447a0
...
...
@@ -195,5 +195,44 @@ public class DistributionOrderDetailVo implements Entity {
*/
private
String
introduceRebate
;
/**
* 藏馆订单中转状态
*/
private
Integer
transferState
;
/**
* 鉴定单不通过的原因
*/
private
String
approvedRemark
;
/**
* 发出的快递公司编码
*/
private
String
outLogisticsCode
;
private
String
outLogisticsName
;
/**
* 发出的物流单号
*/
private
String
outWaybill
;
/**
* 寄到平台的快递公司编码
*/
private
String
fromLogisticsCode
;
private
String
fromLogisticsName
;
/**
* 寄来的物流单号
*/
private
String
fromWaybill
;
/**
* 审核结果
* 0不通过; 1通过
*/
private
Integer
approved
;
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
View file @
c37447a0
...
...
@@ -16,6 +16,7 @@ import com.wwdz.ch.db.domain.FollowFansRecord;
import
com.wwdz.ch.db.domain.distribution.*
;
import
com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.IdentifyOrderRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.core.api.WxAppletApi
;
import
com.wwdz.ch.core.entity.AuctionOfferNoticeMsg
;
...
...
@@ -26,6 +27,7 @@ import com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderVo;
import
com.wwdz.ch.wx.service.distribution.DistributionOrderService
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
import
com.wwdz.ch.core.service.SendMsgService
;
import
com.wwdz.ch.wx.service.distribution.IdentifyOrderService
;
import
com.xxdxxs.utils.DateUtils
;
import
com.xxdxxs.utils.EntityMapper
;
import
org.redisson.api.RLock
;
...
...
@@ -115,6 +117,9 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Autowired
IdentifyOrderDao
identifyOrderDao
;
@Autowired
IdentifyOrderService
identifyOrderService
;
@Transactional
@Override
public
Result
createDistributionOrder
(
DistributionOrderRequestDto
dto
)
{
...
...
@@ -478,12 +483,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributorProfit
.
setCreateTime
(
new
Date
());
distributorProfit
.
setIsValid
(
false
);
distributorProfitDao
.
insert
(
distributorProfit
);
//创建鉴定单
/**
*
*/
return
Result
.
success
(
map
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"创建藏品一口价订单失败 error : {}"
,
e
);
...
...
@@ -837,12 +836,23 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
Long
distributionTotalPrice
=
distributorProfit
.
getItemCost
();
distributionOrderDetailVo
.
setDistributionPrice
(
PriceUtil
.
convertPriceFenToYuan
(
distributionTotalPrice
));
distributionOrderDetailVo
.
setChannelCost
(
"6‰"
);
/* //通道费
double channelCost = distributionOrder.getAmount().doubleValue() * 0.006;
if (channelCost < 1) {
channelCost = 0;
//藏馆订单中转审核不通过要展示原因
if
(
distributionOrder
.
getType
()
==
DistributionEnum
.
DistributionTypeEnum
.
COLLECT
.
getCode
())
{
IdentifyOrder
identifyOrder
=
identifyOrderDao
.
findByDistributionOrderId
(
dto
.
getDistributionOrderId
());
distributionOrderDetailVo
.
setFromLogisticsCode
(
identifyOrder
.
getFromLogisticsCode
());
distributionOrderDetailVo
.
setFromLogisticsName
(
LogisticsEnum
.
getNameByCode
(
identifyOrder
.
getFromLogisticsCode
()));
distributionOrderDetailVo
.
setFromWaybill
(
identifyOrder
.
getFromWaybill
());
distributionOrderDetailVo
.
setApproved
(
identifyOrder
.
getApproved
());
distributionOrderDetailVo
.
setTransferState
(
identifyOrder
.
getState
());
//已取消的藏馆订单查询鉴定单信息
if
(
distributionOrder
.
getState
()
==
DistributionEnum
.
DistributionOrderStateEnum
.
REFUNDING
.
getCode
()
||
distributionOrder
.
getState
()
==
DistributionEnum
.
DistributionOrderStateEnum
.
CANCEL
.
getCode
())
{
distributionOrderDetailVo
.
setApprovedRemark
(
identifyOrder
.
getRemark
());
distributionOrderDetailVo
.
setOutLogisticsCode
(
identifyOrder
.
getOutLogisticsCode
());
distributionOrderDetailVo
.
setOutLogisticsName
(
LogisticsEnum
.
getNameByCode
(
identifyOrder
.
getOutLogisticsCode
()));
distributionOrderDetailVo
.
setOutWaybill
(
identifyOrder
.
getOutWaybill
());
}
}
distributionOrderDetailVo.setChannelCost(PriceUtil.convertDoubleToString(channelCost));*/
//利润
Double
profit
=
distributorProfit
.
getProfit
().
doubleValue
();
//一口价支付截止时间为下单半小时后,竞拍为24小时
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/IdentifyOrderServiceImpl.java
View file @
c37447a0
package
com.wwdz.ch.wx.impl.distribution
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.consts.DistributionEnum
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.IdUtils
;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
import
com.wwdz.ch.db.dao.distribution.IdentifyOrderDao
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.distribution.IdentifyOrder
;
import
com.wwdz.ch.db.dto.request.distribution.IdentifyOrderRequestDto
;
import
com.wwdz.ch.wx.service.distribution.IdentifyOrderService
;
...
...
@@ -22,11 +26,20 @@ public class IdentifyOrderServiceImpl implements IdentifyOrderService {
@Autowired
IdentifyOrderDao
identifyOrderDao
;
@Autowired
DistributionOrderDao
distributionOrderDao
;
@Override
public
Result
createIdentifyOrder
(
IdentifyOrderRequestDto
dto
)
{
public
Result
createIdentifyOrder
(
String
distributionOrderId
)
{
try
{
DistributionOrder
distributionOrder
=
distributionOrderDao
.
findById
(
distributionOrderId
);
String
identifyOrderId
=
IdUtils
.
getOrderNumber
(
CommConsts
.
IDENTIFY_ORDER_PREFIX
);
IdentifyOrder
identifyOrder
=
new
IdentifyOrder
();
EntityMapper
.
copyAttribute
(
dto
,
identifyOrder
);
identifyOrder
.
setDistributionOrderId
(
distributionOrderId
);
identifyOrder
.
setItemId
(
distributionOrder
.
getItemId
());
identifyOrder
.
setItemNum
(
distributionOrder
.
getItemNum
());
identifyOrder
.
setSellerId
(
distributionOrder
.
getSellerId
());
identifyOrder
.
setIdentifyOrderId
(
identifyOrderId
);
identifyOrder
.
setState
(
DistributionEnum
.
IdentifyOrderStateEnum
.
CHANNEL_WAIT_RECEIVE
.
getCode
());
identifyOrder
.
setCreateTime
(
new
Date
());
identifyOrder
.
setUpdateTime
(
new
Date
());
...
...
@@ -34,7 +47,6 @@ public class IdentifyOrderServiceImpl implements IdentifyOrderService {
return
Result
.
success
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"创建鉴定单失败 error : {}"
,
e
);
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
}
return
Result
.
failed
();
}
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/IdentifyOrderService.java
View file @
c37447a0
...
...
@@ -8,8 +8,8 @@ public interface IdentifyOrderService {
/**
* 创建鉴定单
* @param d
to
* @param d
istributionOrderId
* @return
*/
Result
createIdentifyOrder
(
IdentifyOrderRequestDto
dto
);
Result
createIdentifyOrder
(
String
distributionOrderId
);
}
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