Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
ims-ci-test
Commits
d177cc97
提交
d177cc97
authored
11月 07, 2023
作者:
恶龙咆哮
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
可以发多人订单,已经飞手多人抢单
上级
5752b6c5
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
342 行增加
和
19 行删除
+342
-19
GrabTheOrderVO.java
...c/main/java/com/mmc/csf/infomation/vo/GrabTheOrderVO.java
+2
-0
ServiceRequirementsVO.java
...java/com/mmc/csf/infomation/vo/ServiceRequirementsVO.java
+4
-0
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+26
-0
RequirementsAmountDO.java
...csf/release/entity/requirements/RequirementsAmountDO.java
+16
-0
ServiceRequirementsDO.java
...sf/release/entity/requirements/ServiceRequirementsDO.java
+5
-0
ServiceRequirementsSonDO.java
...release/entity/requirements/ServiceRequirementsSonDO.java
+188
-0
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+69
-16
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+32
-3
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/GrabTheOrderVO.java
浏览文件 @
d177cc97
...
@@ -51,5 +51,7 @@ public class GrabTheOrderVO {
...
@@ -51,5 +51,7 @@ public class GrabTheOrderVO {
@ApiModelProperty
(
value
=
"手机号"
,
hidden
=
true
)
@ApiModelProperty
(
value
=
"手机号"
,
hidden
=
true
)
private
String
phoneNum
;
private
String
phoneNum
;
@ApiModelProperty
(
value
=
"订单需求总人数"
)
private
Integer
requireNum
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/ServiceRequirementsVO.java
浏览文件 @
d177cc97
...
@@ -113,4 +113,8 @@ public class ServiceRequirementsVO implements Serializable {
...
@@ -113,4 +113,8 @@ public class ServiceRequirementsVO implements Serializable {
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
private
Integer
districtCode
;
private
Integer
districtCode
;
@ApiModelProperty
(
value
=
"订单总共需要多少人"
)
private
Integer
requireNum
;
}
}
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
d177cc97
...
@@ -85,6 +85,9 @@ public interface RequirementsDao {
...
@@ -85,6 +85,9 @@ public interface RequirementsDao {
void
addPublishService
(
ServiceRequirementsDO
requirementsInfoDO
);
void
addPublishService
(
ServiceRequirementsDO
requirementsInfoDO
);
void
addPublishServiceSon
(
ServiceRequirementsSonDO
serviceRequirementsSonDO
);
ServiceRequirementsDO
grabTheOrder
(
Integer
requirementsInfoId
);
ServiceRequirementsDO
grabTheOrder
(
Integer
requirementsInfoId
);
void
updateGrabTheOrder
(
Integer
requirementsInfoId
,
Integer
repertory
);
void
updateGrabTheOrder
(
Integer
requirementsInfoId
,
Integer
repertory
);
...
@@ -217,4 +220,27 @@ public interface RequirementsDao {
...
@@ -217,4 +220,27 @@ public interface RequirementsDao {
BigDecimal
getServiceOrderAmount
();
BigDecimal
getServiceOrderAmount
();
/**
* 根据父订单获取子订单中没被抢的id
* @param fatherRequireId 父订单id
* @return {@link Integer}
*/
Integer
getRequirementsSonInfoId
(
Integer
fatherRequireId
);
/**
* 修改父订单中还需多少人字段
* @param fatherRequireId 父订单id
* @param fatherRepertory 还需多少人
* @return {@link Integer}
*/
Integer
updateRequirementsInfoRepertory
(
Integer
fatherRequireId
,
Integer
fatherRepertory
);
/**
* 查找用户有没有已经抢到这个订单了
* @param fatherRequireId 父订单id
* @param userId 抢单用户id
* @return {@link Integer}1 就是已经抢到这个订单了 0 就是没抢过
*/
Integer
selectBooleanByFatherIdAndUserId
(
Integer
fatherRequireId
,
Integer
userId
);
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsAmountDO.java
浏览文件 @
d177cc97
...
@@ -98,6 +98,22 @@ public class RequirementsAmountDO implements Serializable {
...
@@ -98,6 +98,22 @@ public class RequirementsAmountDO implements Serializable {
this
.
levelWeChatAmount
=
requirementsInfoDO
.
getLevelWeChatAmount
();
this
.
levelWeChatAmount
=
requirementsInfoDO
.
getLevelWeChatAmount
();
this
.
levelCashAmount
=
requirementsInfoDO
.
getLevelCashAmount
();
this
.
levelCashAmount
=
requirementsInfoDO
.
getLevelCashAmount
();
}
}
public
RequirementsAmountDO
(
ServiceRequirementsSonDO
requirementsInfoDO
)
{
this
.
requirementsInfoId
=
requirementsInfoDO
.
getId
();
this
.
orderAmount
=
requirementsInfoDO
.
getOrderAmount
();
this
.
totalAmount
=
requirementsInfoDO
.
getTotalAmount
();
this
.
orderLevelAmount
=
requirementsInfoDO
.
getOrderLevelAmount
();
this
.
orderLevel
=
requirementsInfoDO
.
getOrderLevel
();
this
.
weChat
=
requirementsInfoDO
.
getWeChat
();
this
.
salaryAmount
=
requirementsInfoDO
.
getSalaryAmount
();
this
.
wechatPayOrderNumber
=
requirementsInfoDO
.
getWechatPayOrderNumber
();
this
.
userAccountId
=
requirementsInfoDO
.
getUserAccountId
();
this
.
cashAmount
=
requirementsInfoDO
.
getCashAmount
();
this
.
levelSalaryAmount
=
requirementsInfoDO
.
getLevelSalaryAmount
();
this
.
levelWeChatAmount
=
requirementsInfoDO
.
getLevelWeChatAmount
();
this
.
levelCashAmount
=
requirementsInfoDO
.
getLevelCashAmount
();
}
public
RequirementsAmountDO
(
ServiceRequirementsEditVO
requirementsEditVO
)
{
public
RequirementsAmountDO
(
ServiceRequirementsEditVO
requirementsEditVO
)
{
this
.
orderAmount
=
requirementsEditVO
.
getOrderAmount
();
this
.
orderAmount
=
requirementsEditVO
.
getOrderAmount
();
...
...
release-service/src/main/java/com/mmc/csf/release/entity/requirements/ServiceRequirementsDO.java
浏览文件 @
d177cc97
...
@@ -145,6 +145,8 @@ public class ServiceRequirementsDO {
...
@@ -145,6 +145,8 @@ public class ServiceRequirementsDO {
@ApiModelProperty
(
value
=
"服务名称"
)
@ApiModelProperty
(
value
=
"服务名称"
)
private
String
serviceName
;
private
String
serviceName
;
@ApiModelProperty
(
value
=
"订单总共所需多少人"
)
private
Integer
requireNum
;
public
ServiceRequirementsDO
(
ServiceRequirementsVO
serviceRequirementsVO
)
{
public
ServiceRequirementsDO
(
ServiceRequirementsVO
serviceRequirementsVO
)
{
this
.
id
=
serviceRequirementsVO
.
getId
();
this
.
id
=
serviceRequirementsVO
.
getId
();
...
@@ -172,5 +174,8 @@ public class ServiceRequirementsDO {
...
@@ -172,5 +174,8 @@ public class ServiceRequirementsDO {
this
.
provinceCode
=
serviceRequirementsVO
.
getProvinceCode
();
this
.
provinceCode
=
serviceRequirementsVO
.
getProvinceCode
();
this
.
cityCode
=
serviceRequirementsVO
.
getCityCode
();
this
.
cityCode
=
serviceRequirementsVO
.
getCityCode
();
this
.
districtCode
=
serviceRequirementsVO
.
getDistrictCode
();
this
.
districtCode
=
serviceRequirementsVO
.
getDistrictCode
();
this
.
requireNum
=
serviceRequirementsVO
.
getRequireNum
();
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/ServiceRequirementsSonDO.java
0 → 100644
浏览文件 @
d177cc97
package
com
.
mmc
.
csf
.
release
.
entity
.
requirements
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mmc.csf.config.IsNullConvertZero
;
import
com.mmc.csf.infomation.vo.OrderLevelEnum
;
import
com.mmc.csf.release.model.group.Insert
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.Date
;
/**
* @author 张培
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ServiceRequirementsSonDO
{
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"id"
)
@NotBlank
(
message
=
"服务类型id不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Integer
serviceId
;
@ApiModelProperty
(
value
=
"飞行日期——任务开始时间"
,
example
=
"2023-07-25"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskStartTime
;
@ApiModelProperty
(
value
=
"飞行日期——任务结束时间"
,
example
=
"2023-07-26"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskEndTime
;
@ApiModelProperty
(
value
=
"飞行位置——任务地址"
,
example
=
"广东省深圳市"
,
required
=
true
)
@NotBlank
(
message
=
"任务地址不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
String
taskAddress
;
@ApiModelProperty
(
value
=
"飞行位置——任务经度"
,
example
=
"23.344324"
)
private
Double
longitude
;
@ApiModelProperty
(
value
=
"飞行位置——任务纬度"
,
example
=
"44.344324"
)
private
Double
latitude
;
@ApiModelProperty
(
value
=
"省份编码"
,
required
=
false
)
//@NotNull(message = "省份编码不能为空", groups = {Insert.class})
private
Integer
provinceCode
;
@ApiModelProperty
(
value
=
"市编码"
,
required
=
false
)
private
Integer
cityCode
;
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
private
Integer
districtCode
;
@ApiModelProperty
(
value
=
"需求描述"
,
example
=
"描述一下"
,
required
=
true
)
@NotNull
(
message
=
"需求描述不能为空"
,
groups
=
{
Insert
.
class
})
@Length
(
max
=
300
,
message
=
"字符过长"
)
private
String
requireDescription
;
@ApiModelProperty
(
value
=
"订单金额"
,
example
=
"订单金额"
,
required
=
true
)
@NotNull
(
message
=
"订单金额"
,
groups
=
{
Insert
.
class
})
@IsNullConvertZero
private
BigDecimal
orderAmount
;
@ApiModelProperty
(
value
=
"飞手保险"
,
example
=
"飞手保险"
,
required
=
true
)
@NotNull
(
message
=
"飞手保险"
,
groups
=
{
Insert
.
class
})
private
String
insurance
;
@ApiModelProperty
(
value
=
"订单级别"
,
example
=
"订单级别"
,
required
=
true
)
@NotNull
(
message
=
"订单级别"
,
groups
=
{
Insert
.
class
})
private
OrderLevelEnum
orderLevelEnum
;
@ApiModelProperty
(
value
=
"后台获取token里面的用户id"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"发布者姓名"
,
example
=
"张三"
)
private
String
publishName
;
@ApiModelProperty
(
value
=
"发布者电话"
,
example
=
"1892994543"
,
required
=
true
)
@NotNull
(
message
=
"发布者电话不能为空"
,
groups
=
{
Insert
.
class
})
private
String
publishPhone
;
@ApiModelProperty
(
value
=
"发布者订单编号"
)
private
String
publisherNumber
;
@ApiModelProperty
(
value
=
"0普通 100急单 300置顶"
)
@IsNullConvertZero
private
BigDecimal
orderLevelAmount
;
@ApiModelProperty
(
value
=
"订单级别 REGULAR_ORDER,RUSH_ORDER,TOP_ORDER"
)
private
String
orderLevel
;
@ApiModelProperty
(
value
=
"总金额"
,
example
=
"100"
,
required
=
true
)
@NotNull
(
message
=
"总金额"
,
groups
=
{
Insert
.
class
})
@IsNullConvertZero
private
BigDecimal
totalAmount
;
@ApiModelProperty
(
value
=
"云享金"
,
example
=
"10"
)
@IsNullConvertZero
private
BigDecimal
cashAmount
;
@ApiModelProperty
(
value
=
"佣金"
,
example
=
"10"
)
@IsNullConvertZero
private
BigDecimal
salaryAmount
;
@ApiModelProperty
(
value
=
"微信金额"
,
example
=
"10"
)
@IsNullConvertZero
private
BigDecimal
weChat
;
@ApiModelProperty
(
value
=
"微信支付订单编号"
,
example
=
"R202308191657303116170"
)
private
String
wechatPayOrderNumber
;
private
Integer
repertory
;
@ApiModelProperty
(
value
=
"支付方式,云享金:1,佣金:2,微信支付:3"
,
example
=
"1,2,3"
)
private
String
paymentType
;
@ApiModelProperty
(
value
=
"地区编码"
)
private
String
adcode
;
@IsNullConvertZero
@ApiModelProperty
(
value
=
"置顶/加急 佣金支付多少"
,
example
=
"100"
)
private
BigDecimal
levelSalaryAmount
;
@ApiModelProperty
(
value
=
"置顶/加急 微信支付多少"
,
example
=
"100"
)
@IsNullConvertZero
private
BigDecimal
levelWeChatAmount
;
@ApiModelProperty
(
value
=
"置顶/加急 云享金支付多少"
,
example
=
"100"
)
@IsNullConvertZero
private
BigDecimal
levelCashAmount
;
@ApiModelProperty
(
value
=
"openid"
)
private
String
openid
;
@ApiModelProperty
(
value
=
"服务名称"
)
private
String
serviceName
;
@ApiModelProperty
(
value
=
"订单总共所需多少人"
)
private
Integer
requireNum
;
@ApiModelProperty
(
value
=
"上级订单id"
)
private
Integer
fatherRequireId
;
public
ServiceRequirementsSonDO
(
ServiceRequirementsDO
serviceRequirementsDO
)
{
BigDecimal
decimalSum
=
new
BigDecimal
(
serviceRequirementsDO
.
getRequireNum
());
this
.
serviceId
=
serviceRequirementsDO
.
getServiceId
();
this
.
taskStartTime
=
serviceRequirementsDO
.
getTaskStartTime
();
this
.
taskEndTime
=
serviceRequirementsDO
.
getTaskEndTime
();
this
.
taskAddress
=
serviceRequirementsDO
.
getTaskAddress
();
this
.
longitude
=
serviceRequirementsDO
.
getLongitude
();
this
.
latitude
=
serviceRequirementsDO
.
getLatitude
();
this
.
provinceCode
=
serviceRequirementsDO
.
getProvinceCode
();
this
.
cityCode
=
serviceRequirementsDO
.
getCityCode
();
this
.
districtCode
=
serviceRequirementsDO
.
getDistrictCode
();
this
.
requireDescription
=
serviceRequirementsDO
.
getRequireDescription
();
this
.
orderAmount
=
serviceRequirementsDO
.
getOrderAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
insurance
=
serviceRequirementsDO
.
getInsurance
();
this
.
orderLevelEnum
=
serviceRequirementsDO
.
getOrderLevelEnum
();
this
.
userAccountId
=
serviceRequirementsDO
.
getUserAccountId
();
this
.
publishName
=
serviceRequirementsDO
.
getPublishName
();
this
.
publishPhone
=
serviceRequirementsDO
.
getPublishPhone
();
this
.
publisherNumber
=
serviceRequirementsDO
.
getPublisherNumber
();
this
.
orderLevelAmount
=
serviceRequirementsDO
.
getOrderLevelAmount
();
this
.
orderLevel
=
serviceRequirementsDO
.
getOrderLevel
();
this
.
totalAmount
=
serviceRequirementsDO
.
getTotalAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
cashAmount
=
serviceRequirementsDO
.
getCashAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
salaryAmount
=
serviceRequirementsDO
.
getSalaryAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
weChat
=
serviceRequirementsDO
.
getWeChat
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
wechatPayOrderNumber
=
serviceRequirementsDO
.
getWechatPayOrderNumber
();
this
.
repertory
=
1
;
this
.
paymentType
=
serviceRequirementsDO
.
getPaymentType
();
this
.
adcode
=
serviceRequirementsDO
.
getAdcode
();
this
.
levelSalaryAmount
=
serviceRequirementsDO
.
getLevelSalaryAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
levelWeChatAmount
=
serviceRequirementsDO
.
getLevelWeChatAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
levelCashAmount
=
serviceRequirementsDO
.
getLevelCashAmount
().
divide
(
decimalSum
,
2
,
RoundingMode
.
HALF_UP
);
this
.
openid
=
serviceRequirementsDO
.
getOpenid
();
this
.
serviceName
=
serviceRequirementsDO
.
getServiceName
();
this
.
requireNum
=
1
;
this
.
fatherRequireId
=
serviceRequirementsDO
.
getId
();
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
d177cc97
...
@@ -23,11 +23,13 @@ import com.mmc.csf.release.industry.IndustryTypeDTO;
...
@@ -23,11 +23,13 @@ import com.mmc.csf.release.industry.IndustryTypeDTO;
import
com.mmc.csf.release.industry.UserPayInfoVO
;
import
com.mmc.csf.release.industry.UserPayInfoVO
;
import
com.mmc.csf.release.service.RequirementsService
;
import
com.mmc.csf.release.service.RequirementsService
;
import
com.mmc.csf.release.util.RestTemplateUtil
;
import
com.mmc.csf.release.util.RestTemplateUtil
;
import
com.sun.xml.bind.v2.TODO
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.gavaghan.geodesy.Ellipsoid
;
import
org.gavaghan.geodesy.Ellipsoid
;
import
org.gavaghan.geodesy.GeodeticCalculator
;
import
org.gavaghan.geodesy.GeodeticCalculator
;
import
org.gavaghan.geodesy.GeodeticCurve
;
import
org.gavaghan.geodesy.GeodeticCurve
;
import
org.gavaghan.geodesy.GlobalCoordinates
;
import
org.gavaghan.geodesy.GlobalCoordinates
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
...
@@ -2446,6 +2448,8 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2446,6 +2448,8 @@ public class RequirementsServiceImpl implements RequirementsService {
@Override
@Override
public
ResultBody
publishService
(
ServiceRequirementsVO
serviceRequirementsVO
,
HttpServletRequest
request
)
{
public
ResultBody
publishService
(
ServiceRequirementsVO
serviceRequirementsVO
,
HttpServletRequest
request
)
{
//这个是几个人的订单
Integer
sum
=
serviceRequirementsVO
.
getRequireNum
();
//获取用户基本信息
//获取用户基本信息
UserAccountSimpleDTO
userAccountSimpleDTO
=
feignGetUserSimpleInfo
(
serviceRequirementsVO
.
getUserAccountId
(),
request
);
UserAccountSimpleDTO
userAccountSimpleDTO
=
feignGetUserSimpleInfo
(
serviceRequirementsVO
.
getUserAccountId
(),
request
);
String
openid
=
userAccountSimpleDTO
.
getOpenid
();
String
openid
=
userAccountSimpleDTO
.
getOpenid
();
...
@@ -2580,8 +2584,6 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2580,8 +2584,6 @@ public class RequirementsServiceImpl implements RequirementsService {
}
}
}
}
System
.
out
.
println
(
requirementsInfoDO
);
System
.
out
.
println
(
publisherWalletFlowVO
);
if
(
orderLevelEnum
.
equals
(
"RUSH_ORDER"
))
{
if
(
orderLevelEnum
.
equals
(
"RUSH_ORDER"
))
{
//加急的云享金
//加急的云享金
...
@@ -2646,9 +2648,6 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2646,9 +2648,6 @@ public class RequirementsServiceImpl implements RequirementsService {
}
}
System
.
out
.
println
(
requirementsInfoDO
);
System
.
out
.
println
(
publisherWalletFlowVO
);
//不存在加急或者置顶
//不存在加急或者置顶
if
(
rushAndTop
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
if
(
rushAndTop
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
...
@@ -2697,8 +2696,7 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2697,8 +2696,7 @@ public class RequirementsServiceImpl implements RequirementsService {
}
}
}
}
System
.
out
.
println
(
requirementsInfoDO
);
System
.
out
.
println
(
publisherWalletFlowVO
);
if
(
tempTotalAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
if
(
tempTotalAmount
.
compareTo
(
BigDecimal
.
ZERO
)
==
0
)
{
System
.
out
.
println
(
requirementsInfoDO
);
System
.
out
.
println
(
requirementsInfoDO
);
System
.
out
.
println
(
publisherWalletFlowVO
);
System
.
out
.
println
(
publisherWalletFlowVO
);
...
@@ -2722,17 +2720,43 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2722,17 +2720,43 @@ public class RequirementsServiceImpl implements RequirementsService {
IndustryTypeDTO
industryTypeDTO
=
getIndustryTypeById
(
requirementsInfoDO
.
getServiceId
());
IndustryTypeDTO
industryTypeDTO
=
getIndustryTypeById
(
requirementsInfoDO
.
getServiceId
());
requirementsInfoDO
.
setServiceName
(
industryTypeDTO
.
getTypeName
());
requirementsInfoDO
.
setServiceName
(
industryTypeDTO
.
getTypeName
());
requirementsInfoDO
.
setOpenid
(
openid
);
requirementsInfoDO
.
setOpenid
(
openid
);
// sum是1说明订单只需一个人 sum>1 说明是多人需要创建子订单
requirementsInfoDO
.
setRepertory
(
requirementsInfoDO
.
getRequireNum
());
requirementsDao
.
addPublishService
(
requirementsInfoDO
);
requirementsDao
.
addPublishService
(
requirementsInfoDO
);
RequirementsAmountDO
requirementsAmountDO
=
new
RequirementsAmountDO
(
requirementsInfoDO
);
if
(
sum
==
1
)
{
requirementsDao
.
addAmount
(
requirementsAmountDO
);
RequirementsAmountDO
requirementsAmountDO
=
new
RequirementsAmountDO
(
requirementsInfoDO
);
requirementsDao
.
insertPlatformOrderEarnings
(
new
BigDecimal
(
0
),
requirementsInfoDO
.
getId
(),
0
);
requirementsDao
.
addAmount
(
requirementsAmountDO
);
if
(
requirementsAmountDO
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
requirementsDao
.
insertPlatformOrderEarnings
(
new
BigDecimal
(
0
),
requirementsInfoDO
.
getId
(),
0
);
||
requirementsAmountDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
if
(
requirementsAmountDO
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getLevelCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getLevelSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
||
requirementsAmountDO
.
getLevelCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
feignWalletFlow
(
publisherWalletFlowVO
,
request
.
getHeader
(
"token"
));
||
requirementsAmountDO
.
getLevelSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
feignWalletFlow
(
publisherWalletFlowVO
,
request
.
getHeader
(
"token"
));
}
return
ResultBody
.
success
();
}
else
{
//循环添加子订单
for
(
int
i
=
0
;
i
<
sum
;
i
++)
{
ServiceRequirementsSonDO
requirementsSonDO
=
new
ServiceRequirementsSonDO
(
requirementsInfoDO
);
requirementsDao
.
addPublishServiceSon
(
requirementsSonDO
);
System
.
out
.
println
(
requirementsSonDO
);
RequirementsAmountDO
requirementsAmountDO
=
new
RequirementsAmountDO
(
requirementsSonDO
);
System
.
out
.
println
(
requirementsAmountDO
);
System
.
out
.
println
(
"-------------------------"
);
requirementsDao
.
addAmount
(
requirementsAmountDO
);
requirementsDao
.
insertPlatformOrderEarnings
(
new
BigDecimal
(
0
),
requirementsSonDO
.
getId
(),
0
);
if
(
requirementsAmountDO
.
getCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getLevelCashAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
||
requirementsAmountDO
.
getLevelSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
feignWalletFlow
(
publisherWalletFlowVO
,
request
.
getHeader
(
"token"
));
}
}
return
ResultBody
.
success
();
}
}
return
ResultBody
.
success
();
}
else
{
}
else
{
//云享金和佣金扣除完成,但是还不足支付订单金额,并且没有选择微信支付,所以支付不合法
//云享金和佣金扣除完成,但是还不足支付订单金额,并且没有选择微信支付,所以支付不合法
return
ResultBody
.
success
(
"下单失败"
);
return
ResultBody
.
success
(
"下单失败"
);
...
@@ -2796,6 +2820,31 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2796,6 +2820,31 @@ public class RequirementsServiceImpl implements RequirementsService {
@Override
@Override
public
ResultBody
grabTheOrder
(
GrabTheOrderVO
grabTheOrderVO
,
HttpServletRequest
request
)
{
public
ResultBody
grabTheOrder
(
GrabTheOrderVO
grabTheOrderVO
,
HttpServletRequest
request
)
{
//这是这个订单所需要的总人数
Integer
requireNum
=
grabTheOrderVO
.
getRequireNum
();
Integer
fatherRequireId
=
null
,
fatherRepertory
=
null
;
//requireNum >= 2就说明这个订单是分开的有子订单
if
(
requireNum
>=
2
)
{
fatherRequireId
=
grabTheOrderVO
.
getRequirementsInfoId
();
//不让同一个用户对一个多人订单重复下单
if
(
requirementsDao
.
selectBooleanByFatherIdAndUserId
(
fatherRequireId
,
grabTheOrderVO
.
getUserAccountId
())
>
0
)
{
return
ResultBody
.
error
(
"不能重复抢一个订单"
);
}
ServiceRequirementsDO
fatherRequirementsInfoDO
=
requirementsDao
.
grabTheOrder
(
fatherRequireId
);
fatherRepertory
=
fatherRequirementsInfoDO
.
getRepertory
();
if
(
fatherRepertory
<=
0
)
{
return
ResultBody
.
error
(
"需求已被其他人抢走"
);
}
if
(
grabTheOrderVO
.
getRequirementsInfoId
().
equals
(
fatherRequirementsInfoDO
.
getId
())
&&
grabTheOrderVO
.
getUserAccountId
().
equals
(
fatherRequirementsInfoDO
.
getUserAccountId
()))
{
return
ResultBody
.
error
(
"自己不能抢自己发布的需求"
);
}
//获取没被抢的子订单id
Integer
requirementsSonInfoId
=
requirementsDao
.
getRequirementsSonInfoId
(
fatherRequireId
);
grabTheOrderVO
.
setRequirementsInfoId
(
requirementsSonInfoId
);
}
UserAccountSimpleDTO
userAccountSimpleDTO
=
feignGetUserSimpleInfo
(
grabTheOrderVO
.
getUserAccountId
(),
request
);
UserAccountSimpleDTO
userAccountSimpleDTO
=
feignGetUserSimpleInfo
(
grabTheOrderVO
.
getUserAccountId
(),
request
);
String
openid
=
userAccountSimpleDTO
.
getOpenid
();
String
openid
=
userAccountSimpleDTO
.
getOpenid
();
...
@@ -2919,6 +2968,10 @@ public class RequirementsServiceImpl implements RequirementsService {
...
@@ -2919,6 +2968,10 @@ public class RequirementsServiceImpl implements RequirementsService {
||
requirementsServiceDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
||
requirementsServiceDO
.
getSalaryAmount
().
compareTo
(
BigDecimal
.
ZERO
)
!=
0
)
{
walletFlow
(
flyerWalletFlowVO
,
request
.
getHeader
(
"token"
));
walletFlow
(
flyerWalletFlowVO
,
request
.
getHeader
(
"token"
));
}
}
//如果是多人订单 还要去修改父订单还需多少人字段
if
(
requireNum
>=
2
)
{
requirementsDao
.
updateRequirementsInfoRepertory
(
fatherRequireId
,
fatherRepertory
-
1
);
}
return
ResultBody
.
success
();
return
ResultBody
.
success
();
}
else
{
}
else
{
...
...
release-service/src/main/resources/mapper/requirements/RequirementsDao.xml
浏览文件 @
d177cc97
...
@@ -547,12 +547,26 @@
...
@@ -547,12 +547,26 @@
require_description, create_time,
require_description, create_time,
update_time, task_start_time, task_end_time, task_address, longitude,
update_time, task_start_time, task_end_time, task_address, longitude,
latitude, publisher_number, insurance, publish,
latitude, publisher_number, insurance, publish,
service_flow_id, adcode, order_level_amount, openid, service_name,province_code,city_code,district_code)
service_flow_id, adcode, order_level_amount, openid, service_name,province_code,city_code,district_code
,require_num,repertory
)
VALUES (#{serviceId}, #{userAccountId}, #{publishName}, #{publishPhone},
VALUES (#{serviceId}, #{userAccountId}, #{publishName}, #{publishPhone},
#{requireDescription}, NOW(),
#{requireDescription}, NOW(),
NOW(), #{taskStartTime}, #{taskEndTime}, #{taskAddress}, #{longitude},
NOW(), #{taskStartTime}, #{taskEndTime}, #{taskAddress}, #{longitude},
#{latitude}, #{publisherNumber}, #{insurance}, 1, 1, #{adcode}, #{orderLevelAmount}, #{openid},
#{latitude}, #{publisherNumber}, #{insurance}, 1, 1, #{adcode}, #{orderLevelAmount}, #{openid},
#{serviceName},#{provinceCode},#{cityCode},#{districtCode});
#{serviceName},#{provinceCode},#{cityCode},#{districtCode},#{requireNum},#{repertory});
</insert>
<insert
id=
"addPublishServiceSon"
parameterType=
"com.mmc.csf.release.entity.requirements.ServiceRequirementsSonDO"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
INSERT INTO requirements_info(service_id, user_account_id, publish_name, publish_phone,
require_description, create_time,
update_time, task_start_time, task_end_time, task_address, longitude,
latitude, publisher_number, insurance, publish,
service_flow_id, adcode, order_level_amount, openid, service_name,province_code,city_code,district_code,father_require_id)
VALUES (#{serviceId}, #{userAccountId}, #{publishName}, #{publishPhone},
#{requireDescription}, NOW(),
NOW(), #{taskStartTime}, #{taskEndTime}, #{taskAddress}, #{longitude},
#{latitude}, #{publisherNumber}, #{insurance}, 1, 1, #{adcode}, #{orderLevelAmount}, #{openid},
#{serviceName},#{provinceCode},#{cityCode},#{districtCode},#{fatherRequireId});
</insert>
</insert>
<insert
id=
"addAmount"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsAmountDO"
<insert
id=
"addAmount"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsAmountDO"
...
@@ -600,7 +614,7 @@
...
@@ -600,7 +614,7 @@
<update
id=
"updateGrabTheOrder"
>
<update
id=
"updateGrabTheOrder"
>
UPDATE requirements_info
UPDATE requirements_info
set repertory=#{repertory},
set repertory=#{repertory},
service_flow_id =
2
,
service_flow_id =
10
,
update_time=NOW()
update_time=NOW()
where id = #{requirementsInfoId}
where id = #{requirementsInfoId}
</update>
</update>
...
@@ -1559,4 +1573,19 @@
...
@@ -1559,4 +1573,19 @@
INNER JOIN requirements_amount ra ON ri.id = ra.requirements_info_id
INNER JOIN requirements_amount ra ON ri.id = ra.requirements_info_id
WHERE ri.service_flow_id
<![CDATA[<>]]>
7
WHERE ri.service_flow_id
<![CDATA[<>]]>
7
</select>
</select>
<select
id=
"getRequirementsSonInfoId"
resultType=
"java.lang.Integer"
>
select id from requirements_info where father_require_id = #{fatherRequireId} and repertory = 1
limit 1
</select>
<select
id=
"selectBooleanByFatherIdAndUserId"
resultType=
"java.lang.Integer"
>
select count(ri.id) from requirements_service rs
inner join requirements_info ri on ri.id = rs.requirements_info_id
where ri.father_require_id =#{fatherRequireId}
and rs.pilot_certification_user_id = #{userId}
</select>
<update
id=
"updateRequirementsInfoRepertory"
>
update requirements_info set repertory = #{fatherRepertory}
where id = #{fatherRequireId}
</update>
</mapper>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论