Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
ims-ci-test
Commits
208b10bb
提交
208b10bb
authored
9月 11, 2023
作者:
张小凤
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/develop'
上级
ddccc20c
e03df532
隐藏空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
621 行增加
和
132 行删除
+621
-132
ServiceOrderFormDetailsDTO.java
...om/mmc/csf/infomation/dto/ServiceOrderFormDetailsDTO.java
+7
-0
LiabilityProblemVO.java
...in/java/com/mmc/csf/infomation/vo/LiabilityProblemVO.java
+7
-0
kustomization.yaml
kustomization/overlays/dev/kustomization.yaml
+1
-1
RequirementsController.java
...om/mmc/csf/release/controller/RequirementsController.java
+7
-1
RedisKeyExpirationListener.java
...ease/controller/countDown/RedisKeyExpirationListener.java
+49
-5
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+17
-0
RequirementsInfoDO.java
...c/csf/release/entity/requirements/RequirementsInfoDO.java
+3
-0
ServiceOrderFormDetailsDO.java
...elease/entity/requirements/ServiceOrderFormDetailsDO.java
+9
-0
RequirementsService.java
...java/com/mmc/csf/release/service/RequirementsService.java
+1
-1
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+352
-84
BackRequirementsDao.xml
...ain/resources/mapper/requirements/BackRequirementsDao.xml
+34
-28
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+134
-12
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/ServiceOrderFormDetailsDTO.java
浏览文件 @
208b10bb
...
@@ -109,4 +109,11 @@ public class ServiceOrderFormDetailsDTO {
...
@@ -109,4 +109,11 @@ public class ServiceOrderFormDetailsDTO {
@ApiModelProperty
(
value
=
"状态"
,
example
=
"100"
)
@ApiModelProperty
(
value
=
"状态"
,
example
=
"100"
)
private
String
orderStatus
;
private
String
orderStatus
;
@ApiModelProperty
(
value
=
"判定内容"
)
private
String
decisionContent
;
@ApiModelProperty
(
value
=
"1:双方无责 2:发布者责任 3:飞手责任"
)
private
Integer
duty
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/LiabilityProblemVO.java
浏览文件 @
208b10bb
...
@@ -29,5 +29,12 @@ public class LiabilityProblemVO {
...
@@ -29,5 +29,12 @@ public class LiabilityProblemVO {
private
Integer
duty
;
private
Integer
duty
;
@ApiModelProperty
(
value
=
"客服判定内容"
,
example
=
"双方无责"
)
private
String
decisionContent
;
@ApiModelProperty
(
value
=
"用户id"
,
hidden
=
true
)
private
Integer
userAccountId
;
}
}
kustomization/overlays/dev/kustomization.yaml
浏览文件 @
208b10bb
...
@@ -18,4 +18,4 @@ patches:
...
@@ -18,4 +18,4 @@ patches:
images
:
images
:
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newTag
:
4c17e602fcf7dc229e48e61efbd20115d3dabc9f
newTag
:
83a12518b04af35aab5b359934a9e9553288ed94
release-service/src/main/java/com/mmc/csf/release/controller/RequirementsController.java
浏览文件 @
208b10bb
...
@@ -239,7 +239,7 @@ public class RequirementsController extends BaseController {
...
@@ -239,7 +239,7 @@ public class RequirementsController extends BaseController {
@PostMapping
(
"confirmSettlement"
)
@PostMapping
(
"confirmSettlement"
)
public
ResultBody
confirmSettlement
(
HttpServletRequest
request
,
@RequestParam
(
value
=
"需求id"
)
Integer
requirementsInfoId
)
{
public
ResultBody
confirmSettlement
(
HttpServletRequest
request
,
@RequestParam
(
value
=
"需求id"
)
Integer
requirementsInfoId
)
{
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
return
requirementsService
.
confirmSettlement
(
userAccountId
,
requirementsInfoId
);
return
requirementsService
.
confirmSettlement
(
userAccountId
,
requirementsInfoId
,
request
);
}
}
@ApiOperation
(
value
=
"new——小程序-—发布者--订单结算详情"
)
@ApiOperation
(
value
=
"new——小程序-—发布者--订单结算详情"
)
...
@@ -313,6 +313,12 @@ public class RequirementsController extends BaseController {
...
@@ -313,6 +313,12 @@ public class RequirementsController extends BaseController {
return
requirementsService
.
updateAmountGetNumber
(
getNumberVO
,
request
);
return
requirementsService
.
updateAmountGetNumber
(
getNumberVO
,
request
);
}
}
/**
* 客服介入
* @param request
* @param liabilityProblemVO
* @return
*/
@ApiOperation
(
value
=
"new2——后台管理取消订单(取消发布者与飞手共同建立的订单)"
)
@ApiOperation
(
value
=
"new2——后台管理取消订单(取消发布者与飞手共同建立的订单)"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"cancelAll"
)
@PostMapping
(
"cancelAll"
)
...
...
release-service/src/main/java/com/mmc/csf/release/controller/countDown/RedisKeyExpirationListener.java
浏览文件 @
208b10bb
...
@@ -6,6 +6,7 @@ import com.mmc.csf.common.util.web.ResultEnum;
...
@@ -6,6 +6,7 @@ import com.mmc.csf.common.util.web.ResultEnum;
import
com.mmc.csf.config.IsNullConvertZeroUtil
;
import
com.mmc.csf.config.IsNullConvertZeroUtil
;
import
com.mmc.csf.infomation.vo.*
;
import
com.mmc.csf.infomation.vo.*
;
import
com.mmc.csf.release.dao.RequirementsDao
;
import
com.mmc.csf.release.dao.RequirementsDao
;
import
com.mmc.csf.release.entity.requirements.RequirementsAmountUpdateDO
;
import
com.mmc.csf.release.entity.requirements.RequirementsInfoDO
;
import
com.mmc.csf.release.entity.requirements.RequirementsInfoDO
;
import
com.mmc.csf.release.entity.requirements.RequirementsServiceDO
;
import
com.mmc.csf.release.entity.requirements.RequirementsServiceDO
;
import
com.mmc.csf.release.entity.requirements.ServiceSettleAccountsDO
;
import
com.mmc.csf.release.entity.requirements.ServiceSettleAccountsDO
;
...
@@ -54,6 +55,11 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -54,6 +55,11 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
super
(
listenerContainer
);
super
(
listenerContainer
);
}
}
/**
* 飞手未确认按照钱的计算
* @param message
* @param pattern
*/
@Override
@Override
public
void
onMessage
(
Message
message
,
byte
[]
pattern
)
{
public
void
onMessage
(
Message
message
,
byte
[]
pattern
)
{
// 获取失效的key
// 获取失效的key
...
@@ -75,15 +81,30 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -75,15 +81,30 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
private
ResultBody
getResultBody
(
RequirementsInfoDO
infoDO
)
{
private
ResultBody
getResultBody
(
RequirementsInfoDO
infoDO
)
{
int
count
=
requirementsDao
.
selectInfo
(
infoDO
.
getId
());
if
(
count
!=
0
){
return
ResultBody
.
error
(
"已结算"
);
}
ServiceSettleAccountsVO
settleAccountsVO
=
new
ServiceSettleAccountsVO
();
ServiceSettleAccountsVO
settleAccountsVO
=
new
ServiceSettleAccountsVO
();
settleAccountsVO
.
setRequirementsInfoId
(
infoDO
.
getId
());
settleAccountsVO
.
setRequirementsInfoId
(
infoDO
.
getId
());
// RequirementsInfoDO infoDO = requirementsDao.selectSettleAccounts(settleAccountsVO);
// RequirementsInfoDO infoDO = requirementsDao.selectSettleAccounts(settleAccountsVO);
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
publisherCancel
(
infoDO
.
getId
(),
infoDO
.
getUserAccountId
());
RequirementsServiceDO
requirementsServiceDO
=
requirementsDao
.
serviceSettleAccounts
(
settleAccountsVO
);
RequirementsServiceDO
requirementsServiceDO
=
requirementsDao
.
serviceSettleAccounts
(
settleAccountsVO
);
if
(
requirementsInfoDO
.
getServiceFlowId
()==
5
||
requirementsInfoDO
.
getServiceFlowId
()==
6
||
requirementsInfoDO
.
getServiceFlowId
()==
7
){
return
ResultBody
.
error
(
"已结算"
);
}
RequirementsAmountUpdateDO
updateAmount
=
requirementsDao
.
findUpdateAmount
(
infoDO
.
getId
());
IsNullConvertZeroUtil
.
checkIsNull
(
infoDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
infoDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
requirementsServiceDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
requirementsServiceDO
);
ServiceSettleAccountsDO
settleAccountsDO
=
new
ServiceSettleAccountsDO
(
settleAccountsVO
);
ServiceSettleAccountsDO
settleAccountsDO
=
new
ServiceSettleAccountsDO
(
settleAccountsVO
);
requirementsDao
.
settleAccounts
(
settleAccountsDO
);
int
i
=
requirementsDao
.
selectSettleAccountEs
(
settleAccountsDO
.
getRequirementsInfoId
());
if
(
i
==
0
){
requirementsDao
.
settleAccounts
(
settleAccountsDO
);
}
requirementsDao
.
updateScene
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
requirementsDao
.
updateScene
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
requirementsDao
.
updateInfo
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
requirementsDao
.
updateInfo
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
//正常结算
//正常结算
...
@@ -97,11 +118,32 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -97,11 +118,32 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
BigDecimal
orderAmount
=
infoDO
.
getOrderAmount
();
BigDecimal
orderAmount
=
infoDO
.
getOrderAmount
();
BigDecimal
bigDecimal
=
new
BigDecimal
(
0.9
);
BigDecimal
bigDecimal
=
new
BigDecimal
(
0.9
);
BigDecimal
bigDecimal1
=
orderAmount
.
multiply
(
bigDecimal
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
BigDecimal
bigDecimal1
=
orderAmount
.
multiply
(
bigDecimal
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
publisherWalletFlowVO
.
setModeOfPayment
(
700
);
BigDecimal
bigDecimal2
=
new
BigDecimal
(
0.1
);
BigDecimal
orderEarnings
=
orderAmount
.
multiply
(
bigDecimal2
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
BigDecimal
orderEarnings1
=
requirementsInfoDO
.
getOrderEarnings
();
BigDecimal
add
=
orderEarnings1
.
add
(
orderEarnings
);
//平台收益
requirementsDao
.
updateOrderEarnings
(
add
,
requirementsInfoDO
.
getId
());
publisherWalletFlowVO
.
setModeOfPayment
(
900
);
publisherWalletFlowVO
.
setFlyerSalaryAmount
(
bigDecimal1
);
publisherWalletFlowVO
.
setFlyerSalaryAmount
(
bigDecimal1
);
publisherWalletFlowVO
.
setCashAmount
(
infoDO
.
getCashAmount
().
negate
());
publisherWalletFlowVO
.
setCashAmount
(
infoDO
.
getCashAmount
().
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
infoDO
.
getSalaryAmount
().
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
infoDO
.
getSalaryAmount
().
negate
());
//需要退回后面支付的金额
if
(
updateAmount
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
updateAmount
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
publisherWalletFlowVO
.
setRefundCashAmount
(
updateAmount
.
getCashAmount
());
publisherWalletFlowVO
.
setRefundSalaryAmount
(
updateAmount
.
getSalaryAmount
());
}
//推发布者微信支付的金额
if
(
updateAmount
.
getWeChat
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
applyRefundVO
.
setReason
(
"飞手未确认退款"
);
applyRefundVO
.
setRefund
(
updateAmount
.
getWeChat
().
multiply
(
new
BigDecimal
(
100
)).
longValue
());
applyRefundVO
.
setOutTradeNo
(
updateAmount
.
getWechatPayOrderNumber
());
applyRefund
(
applyRefundVO
,
""
);
}
publisherWalletFlowVO
.
setUserAccountId
(
infoDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setUserAccountId
(
infoDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
0
);
publisherWalletFlowVO
.
setOperateUserAccountId
(
0
);
...
@@ -114,7 +156,7 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -114,7 +156,7 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
}
}
//退飞手钱
//退飞手钱
flyerWalletFlowVO
.
setModeOfPayment
(
7
00
);
flyerWalletFlowVO
.
setModeOfPayment
(
9
00
);
flyerWalletFlowVO
.
setCashAmount
(
requirementsServiceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setCashAmount
(
requirementsServiceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setSalaryAmount
(
requirementsServiceDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setSalaryAmount
(
requirementsServiceDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setUserAccountId
(
requirementsServiceDO
.
getPilotCertificationUserId
());
flyerWalletFlowVO
.
setUserAccountId
(
requirementsServiceDO
.
getPilotCertificationUserId
());
...
@@ -131,6 +173,8 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -131,6 +173,8 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefund
(
applyRefundVO
,
""
);
applyRefund
(
applyRefundVO
,
""
);
}
}
//推发布者微信账户
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
flyerCancel
(
walletFlowVO
,
""
);
flyerCancel
(
walletFlowVO
,
""
);
...
@@ -151,7 +195,7 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
...
@@ -151,7 +195,7 @@ public class RedisKeyExpirationListener extends KeyExpirationEventMessageListene
HttpEntity
<
String
>
entity
=
new
HttpEntity
<>(
JSONObject
.
toJSONString
(
walletFlowVO
),
headers
);
HttpEntity
<
String
>
entity
=
new
HttpEntity
<>(
JSONObject
.
toJSONString
(
walletFlowVO
),
headers
);
ResponseEntity
<
Object
>
exchange
=
null
;
ResponseEntity
<
Object
>
exchange
=
null
;
try
{
try
{
exchange
=
restTemplate
.
exchange
(
userApp
+
"/userapp/pay/feignWalletFlow"
,
HttpMethod
.
POST
,
entity
,
Object
.
class
);
exchange
=
restTemplate
.
exchange
(
userApp
+
"/userapp/pay/feignWalletFlow
NO
"
,
HttpMethod
.
POST
,
entity
,
Object
.
class
);
}
catch
(
RestClientException
e
)
{
}
catch
(
RestClientException
e
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_THIRD_PARTY_INTERFACE_IS_BEING_UPDATED
);
return
ResultBody
.
error
(
ResultEnum
.
THE_THIRD_PARTY_INTERFACE_IS_BEING_UPDATED
);
}
}
...
...
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
208b10bb
...
@@ -4,6 +4,7 @@ import com.mmc.csf.infomation.dto.*;
...
@@ -4,6 +4,7 @@ import com.mmc.csf.infomation.dto.*;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.qo.MyPreemptQO
;
import
com.mmc.csf.infomation.qo.MyPreemptQO
;
import
com.mmc.csf.infomation.qo.MyPublishQO
;
import
com.mmc.csf.infomation.qo.MyPublishQO
;
import
com.mmc.csf.infomation.vo.LiabilityProblemVO
;
import
com.mmc.csf.infomation.vo.ServiceSettleAccountsVO
;
import
com.mmc.csf.infomation.vo.ServiceSettleAccountsVO
;
import
com.mmc.csf.release.entity.requirements.*
;
import
com.mmc.csf.release.entity.requirements.*
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
...
@@ -103,6 +104,8 @@ public interface RequirementsDao {
...
@@ -103,6 +104,8 @@ public interface RequirementsDao {
void
settleAccounts
(
ServiceSettleAccountsDO
settleAccountsDO
);
void
settleAccounts
(
ServiceSettleAccountsDO
settleAccountsDO
);
int
selectSettleAccountEs
(
Integer
requirementsInfoId
);
ServiceSettleAccountsDO
settleAccountsDetails
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
ServiceSettleAccountsDO
settleAccountsDetails
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
void
evaluate
(
ServiceEvaluateDO
serviceEvaluateDO
);
void
evaluate
(
ServiceEvaluateDO
serviceEvaluateDO
);
...
@@ -120,6 +123,8 @@ public interface RequirementsDao {
...
@@ -120,6 +123,8 @@ public interface RequirementsDao {
RequirementsInfoDO
publisherCancel
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
RequirementsInfoDO
publisherCancel
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
RequirementsInfoDO
publisherCancelFlyers
(
Integer
requirementsInfoId
);
RequirementsInfoDO
customerPublisherCancel
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
RequirementsInfoDO
customerPublisherCancel
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
RequirementsInfoDO
publisherCancelFlyer
(
Integer
requirementsInfoId
);
RequirementsInfoDO
publisherCancelFlyer
(
Integer
requirementsInfoId
);
...
@@ -195,4 +200,16 @@ public interface RequirementsDao {
...
@@ -195,4 +200,16 @@ public interface RequirementsDao {
RequirementsServiceDO
serviceReq
(
Integer
requirementsInfoId
);
RequirementsServiceDO
serviceReq
(
Integer
requirementsInfoId
);
void
updateRepertory
(
Integer
requirementsInfoId
);
void
updateRepertory
(
Integer
requirementsInfoId
);
int
findAmountUpdate
(
Integer
requirementsInfoId
);
void
updateRequirementsAmountUpdate
(
RequirementsAmountUpdateDO
amountUpdateDO
);
RequirementsAmountUpdateDO
findUpdateAmount
(
Integer
requirementsInfoId
);
int
selectInfo
(
Integer
id
);
void
customerServiceIntervention
(
LiabilityProblemVO
liabilityProblemVO
);
int
selectCustomer
(
Integer
requirementsInfoId
);
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsInfoDO.java
浏览文件 @
208b10bb
...
@@ -174,6 +174,9 @@ public class RequirementsInfoDO implements Serializable {
...
@@ -174,6 +174,9 @@ public class RequirementsInfoDO implements Serializable {
@ApiModelProperty
(
value
=
"抢单飞手id"
)
@ApiModelProperty
(
value
=
"抢单飞手id"
)
private
Integer
pilotCertificationId
;
private
Integer
pilotCertificationId
;
@ApiModelProperty
(
value
=
"发布者openid"
)
private
String
openid
;
public
RequirementsInfoVO
buildRequirementsInfoVO
()
{
public
RequirementsInfoVO
buildRequirementsInfoVO
()
{
return
RequirementsInfoVO
.
builder
().
id
(
this
.
id
).
requirementTypeId
(
this
.
requirementTypeId
).
userAccountId
(
this
.
userAccountId
).
publishName
(
this
.
publishName
)
return
RequirementsInfoVO
.
builder
().
id
(
this
.
id
).
requirementTypeId
(
this
.
requirementTypeId
).
userAccountId
(
this
.
userAccountId
).
publishName
(
this
.
publishName
)
.
publishPhone
(
this
.
publishPhone
).
requireDescription
(
this
.
requireDescription
).
solved
(
this
.
solved
).
taskStartTime
(
this
.
taskStartTime
).
taskEndTime
(
this
.
taskEndTime
)
.
publishPhone
(
this
.
publishPhone
).
requireDescription
(
this
.
requireDescription
).
solved
(
this
.
solved
).
taskStartTime
(
this
.
taskStartTime
).
taskEndTime
(
this
.
taskEndTime
)
...
...
release-service/src/main/java/com/mmc/csf/release/entity/requirements/ServiceOrderFormDetailsDO.java
浏览文件 @
208b10bb
...
@@ -106,6 +106,13 @@ public class ServiceOrderFormDetailsDO {
...
@@ -106,6 +106,13 @@ public class ServiceOrderFormDetailsDO {
private
BigDecimal
orderEarnings
;
private
BigDecimal
orderEarnings
;
@ApiModelProperty
(
value
=
"判定内容"
)
private
String
decisionContent
;
@ApiModelProperty
(
value
=
"1:双方无责 2:发布者责任 3:飞手责任"
)
private
Integer
duty
;
public
ServiceOrderFormDetailsDTO
buildOrderFormDetails
()
{
public
ServiceOrderFormDetailsDTO
buildOrderFormDetails
()
{
return
ServiceOrderFormDetailsDTO
.
builder
()
return
ServiceOrderFormDetailsDTO
.
builder
()
.
id
(
this
.
id
)
.
id
(
this
.
id
)
...
@@ -132,6 +139,8 @@ public class ServiceOrderFormDetailsDO {
...
@@ -132,6 +139,8 @@ public class ServiceOrderFormDetailsDO {
.
updateTime
(
this
.
updateTime
)
.
updateTime
(
this
.
updateTime
)
.
orderStatus
(
this
.
orderStatus
)
.
orderStatus
(
this
.
orderStatus
)
.
orderEarnings
(
this
.
orderEarnings
)
.
orderEarnings
(
this
.
orderEarnings
)
.
duty
(
this
.
duty
)
.
decisionContent
(
this
.
decisionContent
)
.
build
();
.
build
();
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/service/RequirementsService.java
浏览文件 @
208b10bb
...
@@ -111,7 +111,7 @@ public interface RequirementsService {
...
@@ -111,7 +111,7 @@ public interface RequirementsService {
ResultBody
<
FlowDictionaryDTO
>
flowDictionary
();
ResultBody
<
FlowDictionaryDTO
>
flowDictionary
();
ResultBody
confirmSettlement
(
Integer
userAccountId
,
Integer
requirementsInfoId
);
ResultBody
confirmSettlement
(
Integer
userAccountId
,
Integer
requirementsInfoId
,
HttpServletRequest
request
);
ResultBody
orderRequirements
(
String
format
);
ResultBody
orderRequirements
(
String
format
);
...
...
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
208b10bb
...
@@ -1249,6 +1249,14 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1249,6 +1249,14 @@ public class RequirementsServiceImpl implements RequirementsService {
public
ResultBody
cancelAll
(
LiabilityProblemVO
liabilityProblemVO
,
Integer
userAccountId
,
HttpServletRequest
request
)
{
public
ResultBody
cancelAll
(
LiabilityProblemVO
liabilityProblemVO
,
Integer
userAccountId
,
HttpServletRequest
request
)
{
RequirementsServiceDO
requirementsServiceDO
=
requirementsDao
.
customerDroneFlyerCancel
(
liabilityProblemVO
.
getRequirementsInfoId
());
RequirementsServiceDO
requirementsServiceDO
=
requirementsDao
.
customerDroneFlyerCancel
(
liabilityProblemVO
.
getRequirementsInfoId
());
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
customerPublisherCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
userAccountId
);
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
customerPublisherCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
userAccountId
);
liabilityProblemVO
.
setUserAccountId
(
userAccountId
);
int
i
=
requirementsDao
.
selectCustomer
(
liabilityProblemVO
.
getRequirementsInfoId
());
if
(
i
!=
0
){
return
ResultBody
.
error
(
"请勿重复判定"
);
}
requirementsDao
.
customerServiceIntervention
(
liabilityProblemVO
);
//双方无责
//双方无责
if
(
liabilityProblemVO
.
getDuty
().
equals
(
1
)){
if
(
liabilityProblemVO
.
getDuty
().
equals
(
1
)){
requirementsDao
.
updateInfo
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
requirementsDao
.
updateInfo
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
...
@@ -1290,43 +1298,142 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1290,43 +1298,142 @@ public class RequirementsServiceImpl implements RequirementsService {
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
());
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setModeOfPayment
(
500
);
flyerWalletFlowVO
.
setModeOfPayment
(
500
);
flyerWalletFlowVO
.
setUserAccountId
(
requirementsServiceDO
.
get
UserAccount
Id
());
flyerWalletFlowVO
.
setUserAccountId
(
requirementsServiceDO
.
get
PilotCertificationUser
Id
());
flyerWalletFlowVO
.
setOperateUserAccountId
(
userAccountId
);
flyerWalletFlowVO
.
setOperateUserAccountId
(
userAccountId
);
flyerWalletFlowVO
.
setCashAmount
(
requirementsServiceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setCashAmount
(
requirementsServiceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setSalaryAmount
(
requirements
Info
DO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setSalaryAmount
(
requirements
Service
DO
.
getSalaryAmount
());
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
flyerCancel
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
flyerCancel
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
//给发布者或者飞手发送信息
this
.
publicSendMsgPublishInfoAuth
(
requirementsServiceDO
);
this
.
requirementsInfoInfoAuth
(
requirementsInfoDO
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
}
}
}
//发布者责任
//发布者责任
if
(
liabilityProblemVO
.
getDuty
().
equals
(
2
)){
if
(
liabilityProblemVO
.
getDuty
().
equals
(
2
)){
publisherCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
requirementsInfoDO
.
getUserAccountId
(),
request
);
publisherCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
requirementsInfoDO
.
getUserAccountId
(),
request
);
requirementsDao
.
updateInfo
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
requirementsDao
.
updateScene
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
}
//飞手责任
//飞手责任
if
(
liabilityProblemVO
.
getDuty
().
equals
(
3
)){
if
(
liabilityProblemVO
.
getDuty
().
equals
(
3
)){
droneFlyerCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
requirementsServiceDO
.
getUserAccountId
(),
request
);
droneFlyerCancel
(
liabilityProblemVO
.
getRequirementsInfoId
(),
requirementsServiceDO
.
getPilotCertificationUserId
(),
request
);
requirementsDao
.
updateInfo
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
requirementsDao
.
updateScene
(
liabilityProblemVO
.
getRequirementsInfoId
(),
7
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
}
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
}
/**
* 给发布者发信息
*/
private
void
requirementsInfoInfoAuth
(
RequirementsInfoDO
requirementsInfoDO
)
{
//订单编号
JSONObject
value1
=
new
JSONObject
();
value1
.
put
(
"value"
,
requirementsInfoDO
.
getPublisherNumber
());
//订单金额
JSONObject
value2
=
new
JSONObject
();
value2
.
put
(
"value"
,
requirementsInfoDO
.
getOrderAmount
());
//下单时间
JSONObject
value3
=
new
JSONObject
();
value3
.
put
(
"value"
,
requirementsInfoDO
.
getCreateTime
());
//取消时间
SimpleDateFormat
df
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
// 设置日期格式
String
date
=
df
.
format
(
new
Date
());
JSONObject
value4
=
new
JSONObject
();
value4
.
put
(
"value"
,
date
);
JSONObject
value5
=
new
JSONObject
();
String
remark
=
"退回金额"
+
requirementsInfoDO
.
getOrderAmount
()
+
"元"
;
value5
.
put
(
"value"
,
remark
);
JSONObject
datad
=
new
JSONObject
();
//订单编号
datad
.
put
(
"character_string2"
,
value1
);
//订单金额
datad
.
put
(
"amount3"
,
value2
);
//下单时间
datad
.
put
(
"date5"
,
value3
);
//取消时间
datad
.
put
(
"time7"
,
value4
);
//备注
datad
.
put
(
"thing4"
,
value5
);
AppletMsgVOS
appletMsgVO
=
new
AppletMsgVOS
();
appletMsgVO
.
setTouser
(
requirementsInfoDO
.
getOpenid
());
appletMsgVO
.
setTemplate_id
(
WxMsgTemplete
.
INDEMNIFY_FOR_PUBLICATION
);
appletMsgVO
.
setPage
(
"pages/welcome/index"
);
appletMsgVO
.
setData
(
datad
);
appletMsgVO
.
setMiniprogram_state
(
userSystemConstant
.
getMiniProgramState
());
appletMsgVO
.
setLang
(
"zh_CN"
);
sendUserAppletMsg
(
appletMsgVO
);
}
/**
* 给飞手短信
* @param requirementsServiceDO
*/
private
void
publicSendMsgPublishInfoAuth
(
RequirementsServiceDO
requirementsServiceDO
)
{
//订单编号
JSONObject
value1
=
new
JSONObject
();
value1
.
put
(
"value"
,
requirementsServiceDO
.
getPublisherNumber
());
//订单金额
JSONObject
value2
=
new
JSONObject
();
value2
.
put
(
"value"
,
requirementsServiceDO
.
getPreemptTotalAmount
());
//下单时间
JSONObject
value3
=
new
JSONObject
();
value3
.
put
(
"value"
,
requirementsServiceDO
.
getCreateTime
());
//取消时间
SimpleDateFormat
df
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
// 设置日期格式
String
date
=
df
.
format
(
new
Date
());
JSONObject
value4
=
new
JSONObject
();
value4
.
put
(
"value"
,
date
);
JSONObject
value5
=
new
JSONObject
();
String
remark
=
"退回金额"
+
requirementsServiceDO
.
getPreemptTotalAmount
()
+
"元"
;
value5
.
put
(
"value"
,
remark
);
JSONObject
datad
=
new
JSONObject
();
//订单编号
datad
.
put
(
"character_string2"
,
value1
);
//订单金额
datad
.
put
(
"amount3"
,
value2
);
//下单时间
datad
.
put
(
"date5"
,
value3
);
//取消时间
datad
.
put
(
"time7"
,
value4
);
//备注
datad
.
put
(
"thing4"
,
value5
);
AppletMsgVOS
appletMsgVO
=
new
AppletMsgVOS
();
appletMsgVO
.
setTouser
(
requirementsServiceDO
.
getOpenid
());
appletMsgVO
.
setTemplate_id
(
WxMsgTemplete
.
INDEMNIFY_FOR_PUBLICATION
);
appletMsgVO
.
setPage
(
"pages/welcome/index"
);
appletMsgVO
.
setData
(
datad
);
appletMsgVO
.
setMiniprogram_state
(
userSystemConstant
.
getMiniProgramState
());
appletMsgVO
.
setLang
(
"zh_CN"
);
sendUserAppletMsg
(
appletMsgVO
);
}
/**
/**
* 修改任务佣金
* 修改任务佣金
*
*
...
@@ -1343,6 +1450,8 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1343,6 +1450,8 @@ public class RequirementsServiceImpl implements RequirementsService {
if
(
requirementsInfoDO
==
null
)
{
if
(
requirementsInfoDO
==
null
)
{
return
ResultBody
.
error
(
"只能修改自己发布的服务需求"
);
return
ResultBody
.
error
(
"只能修改自己发布的服务需求"
);
}
}
String
json
=
stringRedisTemplate
.
opsForValue
().
get
(
amountVO
.
getWechatPayOrderNumber
()
+
amountVO
.
getUserAccountId
());
String
json
=
stringRedisTemplate
.
opsForValue
().
get
(
amountVO
.
getWechatPayOrderNumber
()
+
amountVO
.
getUserAccountId
());
GetOrderNumberDTO
numberDTO
=
JSONObject
.
parseObject
(
json
,
GetOrderNumberDTO
.
class
);
GetOrderNumberDTO
numberDTO
=
JSONObject
.
parseObject
(
json
,
GetOrderNumberDTO
.
class
);
//用户钱包信息接口
//用户钱包信息接口
...
@@ -1365,6 +1474,7 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1365,6 +1474,7 @@ public class RequirementsServiceImpl implements RequirementsService {
BigDecimal
tempTotalAmount
=
orderAmount
;
BigDecimal
tempTotalAmount
=
orderAmount
;
RequirementsAmountUpdateDO
amountUpdateDO
=
new
RequirementsAmountUpdateDO
(
amountVO
,
requirementsInfoDO
);
RequirementsAmountUpdateDO
amountUpdateDO
=
new
RequirementsAmountUpdateDO
(
amountVO
,
requirementsInfoDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
amountUpdateDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
amountUpdateDO
);
//校验是退款还是需要继续支付
//校验是退款还是需要继续支付
//继续支付 需要增加冻结的任务佣金
//继续支付 需要增加冻结的任务佣金
if
(
amountVO
.
getUpdateOrderAmount
().
compareTo
(
requirementsInfoDO
.
getOrderAmount
())
==
1
)
{
if
(
amountVO
.
getUpdateOrderAmount
().
compareTo
(
requirementsInfoDO
.
getOrderAmount
())
==
1
)
{
...
@@ -1487,24 +1597,49 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1487,24 +1597,49 @@ public class RequirementsServiceImpl implements RequirementsService {
WalletFlowVO
walletFlowVO
=
new
WalletFlowVO
();
WalletFlowVO
walletFlowVO
=
new
WalletFlowVO
();
PublisherWalletFlowVO
publisherWalletFlowVO
=
new
PublisherWalletFlowVO
();
PublisherWalletFlowVO
publisherWalletFlowVO
=
new
PublisherWalletFlowVO
();
IsNullConvertZeroUtil
.
checkIsNull
(
publisherWalletFlowVO
);
IsNullConvertZeroUtil
.
checkIsNull
(
publisherWalletFlowVO
);
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
//RequirementsServiceDO requirementsServiceDO = new RequirementsServiceDO();
publisherWalletFlowVO
.
setModeOfPayment
(
800
);
System
.
out
.
println
(
amountUpdateDO
);
publisherWalletFlowVO
.
setSalaryAmount
(
amountUpdateDO
.
getSalaryAmount
().
negate
());
publisherWalletFlowVO
.
setCashAmount
(
amountUpdateDO
.
getCashAmount
().
negate
());
publisherWalletFlowVO
.
setUserAccountId
(
amountUpdateDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
amountUpdateDO
.
getUserAccountId
());
String
wechatPayOrderNumber
=
amountUpdateDO
.
getWechatPayOrderNumber
();
if
(
wechatPayOrderNumber
!=
null
){
UserPayInfoVO
userPayInfoVO
=
queryUserPayInfo
(
amountUpdateDO
.
getWechatPayOrderNumber
(),
request
);
if
(!
userPayInfoVO
.
getTradeState
().
equals
(
"SUCCESS"
)){
return
ResultBody
.
error
(
"支付失败,请重新支付"
);
}
}
if
(
tempTotalAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
if
(
tempTotalAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
//表示订单计算完成,需要支付的钱都算出来了
//表示订单计算完成,需要支付的钱都算出来了
if
(
numberDTO
!=
null
)
{
if
(
numberDTO
!=
null
)
{
amountUpdateDO
.
setWechatPayOrderNumber
(
numberDTO
.
getPaymentOrderNumber
());
amountUpdateDO
.
setWechatPayOrderNumber
(
numberDTO
.
getPaymentOrderNumber
());
}
}
requirementsDao
.
updateScene
(
amountVO
.
getRequirementsInfoId
(),
8
);
requirementsDao
.
updateScene
(
amountVO
.
getRequirementsInfoId
(),
8
);
requirementsDao
.
updateInfo
(
amountVO
.
getRequirementsInfoId
(),
8
);
requirementsDao
.
updateInfo
(
amountVO
.
getRequirementsInfoId
(),
8
);
requirementsDao
.
requirementsAmountUpdate
(
amountUpdateDO
);
int
amountUpdate
=
requirementsDao
.
findAmountUpdate
(
amountUpdateDO
.
getRequirementsInfoId
());
redisUtil
.
ins
(
"order_"
+
requirementsInfoDO
.
getPublisherNumber
(),
String
.
valueOf
(
requirementsInfoDO
),
1
,
TimeUnit
.
HOURS
);
if
(
amountUpdate
!=
0
){
return
ResultBody
.
error
(
"只能修改一次不能重复修改"
);
}
else
{
requirementsDao
.
requirementsAmountUpdate
(
amountUpdateDO
);
}
if
(
amountUpdateDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
amountUpdateDO
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
flyerCancelNO
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
}
//倒计时
// redisUtil.ins("order_" + requirementsInfoDO.getPublisherNumber(), String.valueOf(requirementsInfoDO), 1, TimeUnit.HOURS);
redisUtil
.
ins
(
"order_"
+
requirementsInfoDO
.
getPublisherNumber
(),
String
.
valueOf
(
requirementsInfoDO
),
1
,
TimeUnit
.
MINUTES
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
else
{
}
else
{
//云享金和佣金扣除完成,但是还不足支付订单金额,并且没有选择微信支付,所以支付不合法
//云享金和佣金扣除完成,但是还不足支付订单金额,并且没有选择微信支付,所以支付不合法
return
ResultBody
.
success
(
"修改失败"
);
return
ResultBody
.
error
(
"修改失败"
);
}
}
}
}
...
@@ -1517,11 +1652,90 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1517,11 +1652,90 @@ public class RequirementsServiceImpl implements RequirementsService {
}
}
@Override
@Override
public
ResultBody
confirmSettlement
(
Integer
userAccountId
,
Integer
requirementsInfoId
)
{
public
ResultBody
confirmSettlement
(
Integer
userAccountId
,
Integer
requirementsInfoId
,
HttpServletRequest
request
)
{
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
publisherCancel
(
requirementsInfoId
,
userAccountId
);
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
publisherCancelFlyers
(
requirementsInfoId
);
ServiceSettleAccountsVO
settleAccountsVO
=
new
ServiceSettleAccountsVO
();
settleAccountsVO
.
setRequirementsInfoId
(
requirementsInfoId
);
RequirementsServiceDO
serviceDO
=
requirementsDao
.
serviceSettleAccounts
(
settleAccountsVO
);
RequirementsAmountUpdateDO
updateAmount
=
requirementsDao
.
findUpdateAmount
(
requirementsInfoId
);
WalletFlowVO
walletFlowVO
=
new
WalletFlowVO
();
PublisherWalletFlowVO
publisherWalletFlowVO
=
new
PublisherWalletFlowVO
();
IsNullConvertZeroUtil
.
checkIsNull
(
publisherWalletFlowVO
);
FlyerWalletFlowVO
flyerWalletFlowVO
=
new
FlyerWalletFlowVO
();
IsNullConvertZeroUtil
.
checkIsNull
(
flyerWalletFlowVO
);
IsNullConvertZeroUtil
.
checkIsNull
(
serviceDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
requirementsInfoDO
);
if
(
requirementsInfoDO
==
null
)
{
if
(
requirementsInfoDO
==
null
)
{
return
ResultBody
.
error
(
"结算失败"
);
return
ResultBody
.
error
(
"结算失败"
);
}
}
BigDecimal
earnings
=
BigDecimal
.
ZERO
;
//修改金额
if
(
updateAmount
!=
null
){
//继续支付需要扣除金额
IsNullConvertZeroUtil
.
checkIsNull
(
updateAmount
);
publisherWalletFlowVO
.
setCashAmount
(
requirementsInfoDO
.
getCashAmount
().
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
().
negate
());
publisherWalletFlowVO
.
setUserAccountId
(
requirementsInfoDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
userAccountId
);
publisherWalletFlowVO
.
setModeOfPayment
(
1000
);
if
(
updateAmount
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
updateAmount
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
BigDecimal
cash
=
publisherWalletFlowVO
.
getCashAmount
().
negate
();
BigDecimal
salary
=
publisherWalletFlowVO
.
getSalaryAmount
().
negate
();
BigDecimal
add
=
cash
.
add
(
updateAmount
.
getCashAmount
());
BigDecimal
addSalary
=
salary
.
add
(
updateAmount
.
getSalaryAmount
());
publisherWalletFlowVO
.
setCashAmount
(
add
.
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
addSalary
.
negate
());
// publisherWalletFlowVO.setRefundSalaryAmount(updateAmount.getSalaryAmount().negate());
//publisherWalletFlowVO.setRefundCashAmount(updateAmount.getCashAmount().negate());
}
if
(
updateAmount
.
getReturnCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
updateAmount
.
getReturnSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
publisherWalletFlowVO
.
setRefundCashAmount
(
updateAmount
.
getReturnCashAmount
());
publisherWalletFlowVO
.
setRefundSalaryAmount
(
updateAmount
.
getReturnSalaryAmount
());
}
if
(
updateAmount
.
getReturnWeChat
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
applyRefundVO
.
setReason
(
"飞手确认退款"
);
applyRefundVO
.
setOutTradeNo
(
updateAmount
.
getWechatPayOrderNumber
());
applyRefundVO
.
setRefund
(
updateAmount
.
getReturnWeChat
().
multiply
(
new
BigDecimal
(
100
)).
longValue
());
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
}
//给飞手金额
BigDecimal
updateOrderAmount
=
updateAmount
.
getUpdateOrderAmount
();
BigDecimal
multiply
=
updateOrderAmount
.
multiply
(
new
BigDecimal
(
0.9
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
publisherWalletFlowVO
.
setFlyerSalaryAmount
(
multiply
);
//平台收益
earnings
=
updateOrderAmount
.
multiply
(
new
BigDecimal
(
0.1
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
}
flyerWalletFlowVO
.
setSalaryAmount
(
serviceDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setCashAmount
(
serviceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setUserAccountId
(
serviceDO
.
getPilotCertificationUserId
());
flyerWalletFlowVO
.
setOperateUserAccountId
(
userAccountId
);
flyerWalletFlowVO
.
setModeOfPayment
(
1000
);
if
(
serviceDO
.
getWeChat
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
applyRefundVO
.
setReason
(
"原路退回"
);
applyRefundVO
.
setOutTradeNo
(
serviceDO
.
getWechatPayOrderNumber
());
BigDecimal
weChat
=
serviceDO
.
getWeChat
();
long
longValueWeChat
=
weChat
.
multiply
(
new
BigDecimal
(
100
)).
longValue
();
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
}
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
flyerCancelNO
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
BigDecimal
orderEarnings
=
requirementsInfoDO
.
getOrderEarnings
();
BigDecimal
add
=
orderEarnings
.
add
(
earnings
);
requirementsDao
.
updateOrderEarnings
(
add
,
requirementsInfoId
);
requirementsDao
.
updateInfo
(
requirementsInfoId
,
5
);
requirementsDao
.
updateInfo
(
requirementsInfoId
,
5
);
requirementsDao
.
updateScene
(
requirementsInfoId
,
5
);
requirementsDao
.
updateScene
(
requirementsInfoId
,
5
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
...
@@ -1774,87 +1988,141 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -1774,87 +1988,141 @@ public class RequirementsServiceImpl implements RequirementsService {
@Override
@Override
public
ResultBody
flyHandAgree
(
FlyHandAgreeVO
agreeVO
,
HttpServletRequest
request
)
{
public
ResultBody
flyHandAgree
(
FlyHandAgreeVO
agreeVO
,
HttpServletRequest
request
)
{
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
publisherCancelFlyers
(
agreeVO
.
getRequirementsInfoId
());
ServiceSettleAccountsVO
settleAccountsVO
=
new
ServiceSettleAccountsVO
();
ServiceSettleAccountsVO
settleAccountsVO
=
new
ServiceSettleAccountsVO
();
settleAccountsVO
.
setRequirementsInfoId
(
agreeVO
.
getRequirementsInfoId
());
settleAccountsVO
.
setRequirementsInfoId
(
agreeVO
.
getRequirementsInfoId
());
RequirementsInfoDO
infoDO
=
requirementsDao
.
flyHandAgree
(
agreeVO
.
getRequirementsInfoId
());
RequirementsServiceDO
serviceDO
=
requirementsDao
.
serviceSettleAccounts
(
settleAccountsVO
);
RequirementsServiceDO
requirementsServiceDO
=
requirementsDao
.
serviceSettleAccounts
(
settleAccountsVO
);
RequirementsAmountUpdateDO
updateAmount
=
requirementsDao
.
findUpdateAmount
(
agreeVO
.
getRequirementsInfoId
());
RequirementsAmountUpdateDO
amountUpdateDO
=
requirementsDao
.
selectAmountUpdate
(
agreeVO
.
getRequirementsInfoId
());
IsNullConvertZeroUtil
.
checkIsNull
(
infoDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
requirementsServiceDO
);
IsNullConvertZeroUtil
.
checkIsNull
(
amountUpdateDO
);
ServiceSettleAccountsDO
settleAccountsDO
=
new
ServiceSettleAccountsDO
(
settleAccountsVO
);
requirementsDao
.
settleAccounts
(
settleAccountsDO
);
requirementsDao
.
updateScene
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
requirementsDao
.
updateInfo
(
settleAccountsVO
.
getRequirementsInfoId
(),
5
);
//正常结算
WalletFlowVO
walletFlowVO
=
new
WalletFlowVO
();
WalletFlowVO
walletFlowVO
=
new
WalletFlowVO
();
PublisherWalletFlowVO
publisherWalletFlowVO
=
new
PublisherWalletFlowVO
();
PublisherWalletFlowVO
publisherWalletFlowVO
=
new
PublisherWalletFlowVO
();
FlyerWalletFlowVO
flyerWalletFlowVO
=
new
FlyerWalletFlowVO
();
IsNullConvertZeroUtil
.
checkIsNull
(
publisherWalletFlowVO
);
IsNullConvertZeroUtil
.
checkIsNull
(
publisherWalletFlowVO
);
FlyerWalletFlowVO
flyerWalletFlowVO
=
new
FlyerWalletFlowVO
();
IsNullConvertZeroUtil
.
checkIsNull
(
flyerWalletFlowVO
);
IsNullConvertZeroUtil
.
checkIsNull
(
flyerWalletFlowVO
);
//给发布者发送
IsNullConvertZeroUtil
.
checkIsNull
(
serviceDO
);
BigDecimal
orderAmount
=
infoDO
.
getUpdateOrderAmount
();
IsNullConvertZeroUtil
.
checkIsNull
(
requirementsInfoDO
);
BigDecimal
bigDecimal
=
new
BigDecimal
(
0.9
);
BigDecimal
bigDecimal1
=
orderAmount
.
multiply
(
bigDecimal
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
publisherWalletFlowVO
.
setModeOfPayment
(
700
);
publisherWalletFlowVO
.
setFlyerSalaryAmount
(
bigDecimal1
);
//如果修改金额小于订单金额
if
(
requirementsInfoDO
.
getServiceFlowId
()==
5
){
if
(
infoDO
.
getOrderAmount
().
compareTo
(
infoDO
.
getUpdateOrderAmount
())
==
1
)
{
return
ResultBody
.
error
(
"已结算"
);
BigDecimal
cashAmount
=
infoDO
.
getCashAmount
().
add
(
amountUpdateDO
.
getCashAmount
());
BigDecimal
salaryAmount
=
infoDO
.
getSalaryAmount
().
add
(
amountUpdateDO
.
getSalaryAmount
());
publisherWalletFlowVO
.
setCashAmount
(
cashAmount
.
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
salaryAmount
.
negate
());
publisherWalletFlowVO
.
setUserAccountId
(
infoDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
agreeVO
.
getUserAccountId
());
}
else
if
(
infoDO
.
getOrderAmount
().
compareTo
(
infoDO
.
getUpdateOrderAmount
())
==
-
1
)
{
BigDecimal
cashAmount
=
infoDO
.
getCashAmount
().
subtract
(
amountUpdateDO
.
getReturnCashAmount
());
BigDecimal
salaryAmount
=
infoDO
.
getSalaryAmount
().
subtract
(
amountUpdateDO
.
getReturnSalaryAmount
());
publisherWalletFlowVO
.
setCashAmount
(
cashAmount
.
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
salaryAmount
.
negate
());
publisherWalletFlowVO
.
setUserAccountId
(
settleAccountsVO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
agreeVO
.
getUserAccountId
());
}
}
if
(
"TOP_ORDER"
.
equals
(
infoDO
.
getOrderLevel
()))
{
if
(
requirementsInfoDO
==
null
)
{
publisherWalletFlowVO
.
setTopYxjAmount
(
infoDO
.
getLevelCashAmount
().
negate
());
return
ResultBody
.
error
(
"结算失败"
);
publisherWalletFlowVO
.
setTopSalaryAmount
(
infoDO
.
getLevelSalaryAmount
().
negate
());
}
else
if
(
"RUSH_ORDER"
.
equals
(
infoDO
.
getOrderLevel
()))
{
publisherWalletFlowVO
.
setUrgentYxjAmount
(
infoDO
.
getLevelCashAmount
().
negate
());
publisherWalletFlowVO
.
setUrgentSalaryAmount
(
infoDO
.
getLevelSalaryAmount
().
negate
());
}
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
//推发布者微信钱
if
(
amountUpdateDO
.
getReturnWeChat
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
applyRefundVO
.
setReason
(
"推发布者微信金额"
);
applyRefundVO
.
setOutTradeNo
(
infoDO
.
getWechatPayOrderNumber
());
BigDecimal
weChat
=
amountUpdateDO
.
getWeChat
();
long
longValueWeChat
=
weChat
.
multiply
(
new
BigDecimal
(
100
)).
longValue
();
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
}
}
BigDecimal
earnings
=
BigDecimal
.
ZERO
;
//修改金额
if
(
updateAmount
!=
null
){
//继续支付需要扣除金额
IsNullConvertZeroUtil
.
checkIsNull
(
updateAmount
);
if
(
updateAmount
.
getUpdateOrderAmount
().
compareTo
(
updateAmount
.
getOrderAmount
())==-
1
){
if
(
updateAmount
.
getReturnSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
BigDecimal
orderAmount
=
updateAmount
.
getOrderAmount
();
BigDecimal
returnSalaryAmount
=
updateAmount
.
getReturnSalaryAmount
();
BigDecimal
subtract
=
orderAmount
.
subtract
(
returnSalaryAmount
);
publisherWalletFlowVO
.
setSalaryAmount
(
subtract
.
negate
());
if
(
requirementsInfoDO
.
getSalaryAmount
().
compareTo
(
updateAmount
.
getReturnSalaryAmount
())==
0
){
publisherWalletFlowVO
.
setSalaryAmount
(
BigDecimal
.
ZERO
);
}
//退飞手钱
if
(
requirementsInfoDO
.
getSalaryAmount
().
compareTo
(
updateAmount
.
getReturnSalaryAmount
())==
1
){
flyerWalletFlowVO
.
setModeOfPayment
(
700
);
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
().
subtract
(
updateAmount
.
getReturnSalaryAmount
()).
negate
());
flyerWalletFlowVO
.
setCashAmount
(
requirementsServiceDO
.
getCashAmount
());
}
flyerWalletFlowVO
.
setSalaryAmount
(
requirementsServiceDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setUserAccountId
(
requirementsServiceDO
.
getPilotCertificationUserId
());
flyerWalletFlowVO
.
setOperateUserAccountId
(
settleAccountsVO
.
getUserAccountId
());
}
else
{
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
().
negate
());
}
if
(
updateAmount
.
getReturnCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
BigDecimal
orderAmount
=
updateAmount
.
getOrderAmount
();
BigDecimal
returnCashAmount
=
updateAmount
.
getReturnCashAmount
();
BigDecimal
subtract
=
orderAmount
.
subtract
(
returnCashAmount
);
publisherWalletFlowVO
.
setCashAmount
(
subtract
.
negate
());
if
(
requirementsInfoDO
.
getCashAmount
().
compareTo
(
updateAmount
.
getReturnCashAmount
())==
0
){
publisherWalletFlowVO
.
setCashAmount
(
BigDecimal
.
ZERO
);
}
if
(
updateAmount
.
getReturnCashAmount
().
compareTo
(
requirementsInfoDO
.
getCashAmount
())==-
1
){
BigDecimal
cashAmount
=
requirementsInfoDO
.
getCashAmount
();
BigDecimal
returnCashAmount1
=
updateAmount
.
getReturnCashAmount
();
BigDecimal
subtract1
=
cashAmount
.
subtract
(
returnCashAmount1
);
publisherWalletFlowVO
.
setCashAmount
(
subtract1
.
negate
());
}
if
(
requirementsServiceDO
.
getWeChat
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
}
else
{
publisherWalletFlowVO
.
setCashAmount
(
requirementsInfoDO
.
getCashAmount
().
negate
());
}
}
if
(
updateAmount
.
getUpdateOrderAmount
().
compareTo
(
updateAmount
.
getOrderAmount
())==
1
){
publisherWalletFlowVO
.
setSalaryAmount
(
requirementsInfoDO
.
getSalaryAmount
().
negate
());
publisherWalletFlowVO
.
setCashAmount
(
requirementsInfoDO
.
getCashAmount
().
negate
());
}
publisherWalletFlowVO
.
setUserAccountId
(
requirementsInfoDO
.
getUserAccountId
());
publisherWalletFlowVO
.
setOperateUserAccountId
(
agreeVO
.
getUserAccountId
());
publisherWalletFlowVO
.
setModeOfPayment
(
1000
);
if
(
updateAmount
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
updateAmount
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
BigDecimal
cash
=
publisherWalletFlowVO
.
getCashAmount
().
negate
();
BigDecimal
salary
=
publisherWalletFlowVO
.
getSalaryAmount
().
negate
();
BigDecimal
add
=
cash
.
add
(
updateAmount
.
getCashAmount
());
BigDecimal
addSalary
=
salary
.
add
(
updateAmount
.
getSalaryAmount
());
publisherWalletFlowVO
.
setCashAmount
(
add
.
negate
());
publisherWalletFlowVO
.
setSalaryAmount
(
addSalary
.
negate
());
// publisherWalletFlowVO.setRefundSalaryAmount(updateAmount.getSalaryAmount().negate());
//publisherWalletFlowVO.setRefundCashAmount(updateAmount.getCashAmount().negate());
}
if
(
updateAmount
.
getReturnCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
||
updateAmount
.
getReturnSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
publisherWalletFlowVO
.
setRefundCashAmount
(
updateAmount
.
getReturnCashAmount
());
publisherWalletFlowVO
.
setRefundSalaryAmount
(
updateAmount
.
getReturnSalaryAmount
());
}
if
(
updateAmount
.
getReturnWeChat
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
applyRefundVO
.
setReason
(
"飞手确认退款"
);
applyRefundVO
.
setOutTradeNo
(
requirementsInfoDO
.
getWechatPayOrderNumber
());
applyRefundVO
.
setRefund
(
updateAmount
.
getReturnWeChat
().
multiply
(
new
BigDecimal
(
100
)).
longValue
());
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
}
//给飞手金额
BigDecimal
updateOrderAmount
=
updateAmount
.
getUpdateOrderAmount
();
BigDecimal
multiply
=
updateOrderAmount
.
multiply
(
new
BigDecimal
(
0.9
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
publisherWalletFlowVO
.
setFlyerSalaryAmount
(
multiply
);
//平台收益
earnings
=
updateOrderAmount
.
multiply
(
new
BigDecimal
(
0.1
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
}
flyerWalletFlowVO
.
setSalaryAmount
(
serviceDO
.
getSalaryAmount
());
flyerWalletFlowVO
.
setCashAmount
(
serviceDO
.
getCashAmount
());
flyerWalletFlowVO
.
setUserAccountId
(
serviceDO
.
getPilotCertificationUserId
());
flyerWalletFlowVO
.
setOperateUserAccountId
(
agreeVO
.
getUserAccountId
());
flyerWalletFlowVO
.
setModeOfPayment
(
1000
);
/**
* 退飞手金额
*/
if
(
serviceDO
.
getWeChat
().
compareTo
(
BigDecimal
.
ZERO
)!=
0
){
ApplyRefundVO
applyRefundVO
=
new
ApplyRefundVO
();
applyRefundVO
.
setReason
(
"原路退回"
);
applyRefundVO
.
setReason
(
"原路退回"
);
applyRefundVO
.
setOutTradeNo
(
requirementsServiceDO
.
getWechatPayOrderNumber
());
applyRefundVO
.
setOutTradeNo
(
serviceDO
.
getWechatPayOrderNumber
());
BigDecimal
weChat
=
requirementsServiceDO
.
getWeChat
();
BigDecimal
weChat
=
serviceDO
.
getWeChat
();
BigDecimal
decimal
=
new
BigDecimal
(
100
);
long
longValueWeChat
=
weChat
.
multiply
(
new
BigDecimal
(
100
)).
longValue
();
long
longValueWeChat
=
weChat
.
multiply
(
new
BigDecimal
(
100
)).
longValue
();
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefundVO
.
setRefund
(
longValueWeChat
);
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
applyRefund
(
applyRefundVO
,
request
.
getHeader
(
"token"
));
}
}
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setPublisherWalletFlowVO
(
publisherWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
walletFlowVO
.
setFlyerWalletFlowVO
(
flyerWalletFlowVO
);
flyerCancel
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
flyerCancelNO
(
walletFlowVO
,
request
.
getHeader
(
"token"
));
BigDecimal
orderEarnings
=
requirementsInfoDO
.
getOrderEarnings
();
BigDecimal
add
=
orderEarnings
.
add
(
earnings
);
requirementsDao
.
updateOrderEarnings
(
add
,
agreeVO
.
getRequirementsInfoId
());
requirementsDao
.
updateInfo
(
agreeVO
.
getRequirementsInfoId
(),
5
);
requirementsDao
.
updateScene
(
agreeVO
.
getRequirementsInfoId
(),
5
);
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
}
...
...
release-service/src/main/resources/mapper/requirements/BackRequirementsDao.xml
浏览文件 @
208b10bb
...
@@ -27,6 +27,8 @@
...
@@ -27,6 +27,8 @@
<result
property=
"orderStatus"
column=
"order_status"
/>
<result
property=
"orderStatus"
column=
"order_status"
/>
<result
property=
"doing"
column=
"doing"
/>
<result
property=
"doing"
column=
"doing"
/>
<result
property=
"orderEarnings"
column=
"order_earnings"
/>
<result
property=
"orderEarnings"
column=
"order_earnings"
/>
<result
property=
"duty"
column=
"duty"
/>
<result
property=
"decisionContent"
column=
"decision_content"
/>
<collection
property=
"orderEarningsDTO"
ofType=
"com.mmc.csf.infomation.dto.PlatformOrderEarningsDTO"
<collection
property=
"orderEarningsDTO"
ofType=
"com.mmc.csf.infomation.dto.PlatformOrderEarningsDTO"
select=
"selectOrderEarnings"
select=
"selectOrderEarnings"
column=
"{requirementsInfoId=id}"
>
column=
"{requirementsInfoId=id}"
>
...
@@ -109,34 +111,38 @@
...
@@ -109,34 +111,38 @@
</select>
</select>
<select
id=
"serviceOrderFormDetails"
resultMap=
"serviceDetails"
>
<select
id=
"serviceOrderFormDetails"
resultMap=
"serviceDetails"
>
SELECT ri.id,
SELECT
ri.create_time,
ri.id,
ri.update_time,
ri.create_time,
ri.service_id,
ri.update_time,
ri.service_name,
ri.service_id,
ri.publisher_number,
ri.service_name,
ra.order_amount,
ri.publisher_number,
ri.task_start_time,
ra.order_amount,
ri.task_end_time,
ri.task_start_time,
ri.task_address,
ri.task_end_time,
ri.latitude,
ri.task_address,
ri.longitude,
ri.latitude,
ra.cash_amount,
ri.longitude,
ra.salary_amount,
ra.cash_amount,
ra.we_chat,
ra.salary_amount,
rs.cash_amount AS preemptCashAmount,
ra.we_chat,
rs.salary_amount AS preemptSalaryAmount,
rs.cash_amount AS preemptCashAmount,
rs.we_chat AS preemptWeChat,
rs.salary_amount AS preemptSalaryAmount,
ra.update_order_amount,
rs.we_chat AS preemptWeChat,
ri.require_description,
ra.update_order_amount,
sf.order_status,
ri.require_description,
sf.doing,
sf.order_status,
ra.order_earnings
sf.doing,
FROM requirements_info ri
ra.order_earnings,
LEFT JOIN requirements_amount ra
csi.decision_content,
ON ri.id = ra.requirements_info_id
csi.duty
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
FROM
LEFT JOIN service_flow sf ON ri.service_flow_id = sf.id
requirements_info ri
LEFT JOIN requirements_amount ra ON ri.id = ra.requirements_info_id
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
LEFT JOIN service_flow sf ON ri.service_flow_id = sf.id
LEFT JOIN customer_service_intervention csi ON csi.requirements_info_id = ri.id
WHERE ri.id = #{requirementsInfoId}
WHERE ri.id = #{requirementsInfoId}
</select>
</select>
...
...
release-service/src/main/resources/mapper/requirements/RequirementsDao.xml
浏览文件 @
208b10bb
...
@@ -57,12 +57,68 @@
...
@@ -57,12 +57,68 @@
#{returnSalaryAmount})
#{returnSalaryAmount})
</insert>
</insert>
<update
id=
"updateRequirementsAmountUpdate"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsAmountUpdateDO"
>
update requirements_amount_update
<set>
<if
test=
" orderAmount != null "
>
order_amount = #{orderAmount},
</if>
<if
test=
" cashAmount != null "
>
cash_amount = #{cashAmount},
</if>
<if
test=
" weChat != null "
>
we_chat = #{weChat},
</if>
<if
test=
" salaryAmount != null "
>
salary_amount = #{salaryAmount},
</if>
<if
test=
"wechatPayOrderNumber!=null"
>
wechat_pay_order_number= #{wechatPayOrderNumber},
</if>
create_time=NOW(),
update_time=NOW(),
reason=#{reason},
url=#{url},
user_account_id=#{userAccountId},
<if
test=
"updateOrderAmount!=null"
>
update_order_amount=#{updateOrderAmount},
</if>
return_cash_amount=#{returnCashAmount},
return_we_chat =#{returnWeChat},
return_salary_amount=#{returnSalaryAmount}
</set>
where requirements_info_id=#{requirementsInfoId}
</update>
<select
id=
"findUpdateAmount"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsAmountUpdateDO"
>
select requirements_info_id,order_amount,update_order_amount,return_cash_amount,return_we_chat,return_salary_amount,
cash_amount,cash_amount,we_chat,salary_amount,wechat_pay_order_number from
requirements_amount_update where requirements_info_id=#{requirementsInfoId}
</select>
<select
id=
"selectInfo"
resultType=
"java.lang.Integer"
>
select count(*) from requirements_info where service_flow_id =5 and id=#{id}
</select>
<insert
id=
"insertPlatformOrderEarnings"
>
<insert
id=
"insertPlatformOrderEarnings"
>
INSERT INTO platform_order_earnings(liquidated_damages, requirements_info_id, user_account_id, create_time,
INSERT INTO platform_order_earnings(liquidated_damages, requirements_info_id, user_account_id, create_time,
update_time)
update_time)
values (#{earnings}, #{requirementsInfoId}, #{userAccountId}, NOW(), NOW())
values (#{earnings}, #{requirementsInfoId}, #{userAccountId}, NOW(), NOW())
</insert>
</insert>
<insert
id=
"customerServiceIntervention"
parameterType=
"com.mmc.csf.infomation.vo.LiabilityProblemVO"
>
INSERT INTO customer_service_intervention(requirements_info_id, create_time, update_time, user_account_id,
decision_content,duty)
values (#{requirementsInfoId}, NOW(), NOW(), #{userAccountId}, #{decisionContent},#{duty})
</insert>
<select
id=
"selectCustomer"
resultType=
"java.lang.Integer"
>
select count(*) from customer_service_intervention where requirements_info_id=#{requirementsInfoId}
</select>
<update
id=
"updatePlatformOrderEarnings"
>
<update
id=
"updatePlatformOrderEarnings"
>
update platform_order_earnings
update platform_order_earnings
set liquidated_damages=#{earnings},
set liquidated_damages=#{earnings},
...
@@ -595,6 +651,10 @@
...
@@ -595,6 +651,10 @@
VALUES (#{orderAmount}, #{requirementsInfoId}, #{remark}, NOW(), NOW());
VALUES (#{orderAmount}, #{requirementsInfoId}, #{remark}, NOW(), NOW());
</insert>
</insert>
<select
id=
"selectSettleAccountEs"
resultType=
"java.lang.Integer"
>
select count(*) from service_settle_accounts where requirements_info_id=#{requirementsInfoId}
</select>
<select
id=
"settleAccountsDetails"
resultType=
"com.mmc.csf.release.entity.requirements.ServiceSettleAccountsDO"
>
<select
id=
"settleAccountsDetails"
resultType=
"com.mmc.csf.release.entity.requirements.ServiceSettleAccountsDO"
>
select id, order_amount, requirements_info_id, remark, create_time, update_time
select id, order_amount, requirements_info_id, remark, create_time, update_time
...
@@ -637,7 +697,8 @@
...
@@ -637,7 +697,8 @@
<select
id=
"myPublish"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
<select
id=
"myPublish"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT ri.id,
SELECT
ri.id,
ri.task_title,
ri.task_title,
ri.task_start_time,
ri.task_start_time,
ri.task_end_time,
ri.task_end_time,
...
@@ -661,12 +722,14 @@
...
@@ -661,12 +722,14 @@
sf.user_port,
sf.user_port,
sf.flyer_port,
sf.flyer_port,
sf.order_status,
sf.order_status,
ri.publish
ri.publish,
FROM requirements_info ri
rau.update_order_amount
LEFT JOIN requirements_type rt
FROM
ON rt.id = ri.requirement_type_id
requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
left join requirements_amount ra on ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount_update rau ON rau.requirements_info_id = ri.id
WHERE ri.user_account_id = #{userAccountId} and ri.is_deleted!=1
WHERE ri.user_account_id = #{userAccountId} and ri.is_deleted!=1
<if
test=
" requirementsInfoId != null "
>
<if
test=
" requirementsInfoId != null "
>
and ri.id=#{requirementsInfoId}
and ri.id=#{requirementsInfoId}
...
@@ -689,7 +752,8 @@
...
@@ -689,7 +752,8 @@
</select>
</select>
<select
id=
"myPreempt"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
<select
id=
"myPreempt"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT ri.id,
SELECT
ri.id,
ri.task_title,
ri.task_title,
ri.task_start_time,
ri.task_start_time,
ri.task_end_time,
ri.task_end_time,
...
@@ -714,11 +778,14 @@
...
@@ -714,11 +778,14 @@
ri.publish,
ri.publish,
rs.preempt_total_amount,
rs.preempt_total_amount,
ra.order_level,
ra.order_level,
ra.order_amount
ra.order_amount,
FROM requirements_info ri
rau.update_order_amount
FROM
requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
left join requirements_amount ra on ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount_update rau ON rau.requirements_info_id = ri.id
INNER JOIN requirements_service rs ON ri.id = rs.requirements_info_id
INNER JOIN requirements_service rs ON ri.id = rs.requirements_info_id
WHERE rs.pilot_certification_user_id = #{userAccountId} AND rs.is_deleted !=1
WHERE rs.pilot_certification_user_id = #{userAccountId} AND rs.is_deleted !=1
<if
test=
" requirementsInfoId != null "
>
<if
test=
" requirementsInfoId != null "
>
...
@@ -852,8 +919,9 @@
...
@@ -852,8 +919,9 @@
rs.wechat_pay_order_number,
rs.wechat_pay_order_number,
rs.preempt_total_amount,
rs.preempt_total_amount,
rs.service_flow_id,
rs.service_flow_id,
rs.pilot_certification_user_id,
ra.order_amount,
ra.order_amount,
r
i
.openid,
r
s
.openid,
ra.order_earnings
ra.order_earnings
FROM requirements_info ri
FROM requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
...
@@ -914,7 +982,7 @@
...
@@ -914,7 +982,7 @@
</select>
</select>
<select
id=
"
customerPublisherCancel
"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
<select
id=
"
publisherCancelFlyers
"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT ri.id,
SELECT ri.id,
ri.task_title,
ri.task_title,
ri.task_start_time,
ri.task_start_time,
...
@@ -960,6 +1028,56 @@
...
@@ -960,6 +1028,56 @@
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
WHERE ri.id = #{requirementsInfoId}
</select>
<select
id=
"customerPublisherCancel"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT ri.id,
ri.task_title,
ri.task_start_time,
ri.task_end_time,
ri.task_address,
ri.longitude,
ri.latitude,
ri.require_url,
ri.require_description,
ri.requirement_type_id,
ri.user_account_id,
rt.type_name AS requirementTypeName,
ri.publish_phone,
ri.publisher_number,
ri.service_id,
ra.total_amount,
ri.insurance,
ra.order_level,
ra.order_amount,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish,
ra.order_amount,
ra.we_chat,
ra.salary_amount,
ra.cash_amount,
ra.level_cash_amount,
ra.level_salary_amount,
ra.level_we_chat_amount,
ra.wechat_pay_order_number,
ri.service_flow_id,
rs.pilot_certification_user_id,
ri.openid,
ri.create_time,
ra.order_level_amount,
ra.order_earnings
FROM requirements_info ri
LEFT JOIN requirements_type rt
ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.id = ri.service_flow_id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
LEFT JOIN requirements_service rs ON rs.requirements_info_id = ri.id
WHERE ri.id = #{requirementsInfoId}
WHERE ri.id = #{requirementsInfoId}
</select>
</select>
...
@@ -1377,4 +1495,8 @@
...
@@ -1377,4 +1495,8 @@
set repertory=1
set repertory=1
where id = #{requirementsInfoId}
where id = #{requirementsInfoId}
</update>
</update>
<select
id=
"findAmountUpdate"
resultType=
"java.lang.Integer"
>
select count(*) from requirements_amount_update where requirements_info_id=#{requirementsInfoId}
</select>
</mapper>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论