Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
youjj
cloud-platform
Commits
2c16f023
Commit
2c16f023
authored
Jul 24, 2019
by
jiaorz
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'base-modify' of
http://113.105.137.151:22280/youjj/cloud-platform
into base-modify
parents
0fc78715
7c60a55a
Changes
64
Show whitespace changes
Inline
Side-by-side
Showing
64 changed files
with
1752 additions
and
87 deletions
+1752
-87
BaseBiz.java
.../java/com/github/wxiaoqi/security/common/biz/BaseBiz.java
+9
-0
UserInfoDTO.java
...va/com/github/wxiaoqi/security/admin/dto/UserInfoDTO.java
+42
-0
UserFeign.java
...va/com/github/wxiaoqi/security/admin/feign/UserFeign.java
+6
-1
AppUserDetailBiz.java
...m/github/wxiaoqi/security/admin/biz/AppUserDetailBiz.java
+9
-1
AppUserLoginBiz.java
...om/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
+7
-0
AppUserRelationBiz.java
...github/wxiaoqi/security/admin/biz/AppUserRelationBiz.java
+7
-0
AppUserSellingWaterBiz.java
...ub/wxiaoqi/security/admin/biz/AppUserSellingWaterBiz.java
+7
-0
MyWalletBiz.java
...va/com/github/wxiaoqi/security/admin/biz/MyWalletBiz.java
+2
-0
MyWaterBiz.java
...ava/com/github/wxiaoqi/security/admin/biz/MyWaterBiz.java
+29
-0
AppUserController.java
...github/wxiaoqi/security/admin/rest/AppUserController.java
+25
-1
DataController.java
...om/github/wxiaoqi/security/admin/rest/DataController.java
+56
-0
application.yml
ace-modules/ace-generator/src/main/resources/application.yml
+2
-2
generator.properties
...les/ace-generator/src/main/resources/generator.properties
+1
-1
CouponDTO.java
...c/main/java/com/xxfc/platform/activity/dto/CouponDTO.java
+106
-0
CouponFindDTO.java
...in/java/com/xxfc/platform/activity/dto/CouponFindDTO.java
+4
-0
UserCouponDTO.java
...in/java/com/xxfc/platform/activity/dto/UserCouponDTO.java
+39
-0
UserCouponFindDTO.java
...ava/com/xxfc/platform/activity/dto/UserCouponFindDTO.java
+26
-0
UserCouponSendDTO.java
...ava/com/xxfc/platform/activity/dto/UserCouponSendDTO.java
+19
-0
ActivityList.java
.../java/com/xxfc/platform/activity/entity/ActivityList.java
+3
-0
ActivityFeign.java
.../java/com/xxfc/platform/activity/feign/ActivityFeign.java
+11
-0
CouponPagVo.java
.../main/java/com/xxfc/platform/activity/vo/CouponPagVo.java
+43
-0
CouponTitleVo.java
...ain/java/com/xxfc/platform/activity/vo/CouponTitleVo.java
+15
-0
CouponVo.java
...src/main/java/com/xxfc/platform/activity/vo/CouponVo.java
+106
-0
UserCouponPageVo.java
.../java/com/xxfc/platform/activity/vo/UserCouponPageVo.java
+41
-0
ActivityApplication.java
.../java/com/xxfc/platform/activity/ActivityApplication.java
+2
-1
ActivityPopularizeUserBiz.java
...xxfc/platform/activity/biz/ActivityPopularizeUserBiz.java
+10
-0
CouponBiz.java
...c/main/java/com/xxfc/platform/activity/biz/CouponBiz.java
+91
-0
IntegralUserTotalBiz.java
.../com/xxfc/platform/activity/biz/IntegralUserTotalBiz.java
+1
-0
UserCouponBiz.java
...in/java/com/xxfc/platform/activity/biz/UserCouponBiz.java
+110
-3
SwaggerConfig.java
...java/com/xxfc/platform/activity/config/SwaggerConfig.java
+1
-2
CouponMapper.java
.../java/com/xxfc/platform/activity/mapper/CouponMapper.java
+5
-1
UserCouponMapper.java
...a/com/xxfc/platform/activity/mapper/UserCouponMapper.java
+9
-2
DateController.java
.../java/com/xxfc/platform/activity/rest/DateController.java
+31
-0
UserCouponController.java
...com/xxfc/platform/activity/rest/UserCouponController.java
+6
-1
CouponAdminController.java
...c/platform/activity/rest/admin/CouponAdminController.java
+47
-6
UserCouponAdminController.java
...atform/activity/rest/admin/UserCouponAdminController.java
+81
-0
usercoupon.xlsx
...x-activity-server/src/main/resources/file/usercoupon.xlsx
+0
-0
CouponMapper.xml
...ctivity-server/src/main/resources/mapper/CouponMapper.xml
+3
-0
UserCouponMapper.xml
...ity-server/src/main/resources/mapper/UserCouponMapper.xml
+45
-8
ItemTypeEnum.java
...m/xxfc/platform/order/contant/enumerate/ItemTypeEnum.java
+67
-0
OrderItem.java
...c/main/java/com/xxfc/platform/order/entity/OrderItem.java
+160
-0
OrderLog.java
...rc/main/java/com/xxfc/platform/order/entity/OrderLog.java
+80
-0
OrderDetail.java
...ava/com/xxfc/platform/order/entity/inter/OrderDetail.java
+12
-3
OrderItemInter.java
.../com/xxfc/platform/order/entity/inter/OrderItemInter.java
+23
-0
OrderMQDTO.java
...main/java/com/xxfc/platform/order/pojo/mq/OrderMQDTO.java
+18
-5
MemberBO.java
...ain/java/com/xxfc/platform/order/pojo/order/MemberBO.java
+6
-0
OrderItemDTO.java
...java/com/xxfc/platform/order/pojo/order/OrderItemDTO.java
+6
-0
RentVehicleBO.java
...ava/com/xxfc/platform/order/pojo/order/RentVehicleBO.java
+6
-0
TourBO.java
.../main/java/com/xxfc/platform/order/pojo/order/TourBO.java
+6
-0
BaseOrderBiz.java
...c/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
+10
-1
OrderItemBiz.java
...c/main/java/com/xxfc/platform/order/biz/OrderItemBiz.java
+35
-0
OrderLogBiz.java
...rc/main/java/com/xxfc/platform/order/biz/OrderLogBiz.java
+18
-0
OrderItemMapper.java
.../java/com/xxfc/platform/order/mapper/OrderItemMapper.java
+15
-0
OrderLogMapper.java
...n/java/com/xxfc/platform/order/mapper/OrderLogMapper.java
+15
-0
OrderItemController.java
...ava/com/xxfc/platform/order/rest/OrderItemController.java
+14
-0
OrderLogController.java
...java/com/xxfc/platform/order/rest/OrderLogController.java
+14
-0
OrderRentVehicleController.java
.../xxfc/platform/order/rest/OrderRentVehicleController.java
+3
-1
AbstractOrderHandle.java
.../com/xxfc/platform/order/service/AbstractOrderHandle.java
+17
-0
OrderMemberService.java
...a/com/xxfc/platform/order/service/OrderMemberService.java
+35
-3
OrderRentVehicleService.java
.../xxfc/platform/order/service/OrderRentVehicleService.java
+43
-17
OrderTourService.java
...ava/com/xxfc/platform/order/service/OrderTourService.java
+31
-8
OrderItemMapper.xml
...rder-server/src/main/resources/mapper/OrderItemMapper.xml
+24
-0
OrderLogMapper.xml
...order-server/src/main/resources/mapper/OrderLogMapper.xml
+18
-0
VehicleMapper.xml
...ehicle-server/src/main/resources/mapper/VehicleMapper.xml
+19
-19
No files found.
ace-common/src/main/java/com/github/wxiaoqi/security/common/biz/BaseBiz.java
View file @
2c16f023
...
...
@@ -10,6 +10,7 @@ import tk.mybatis.mapper.common.Mapper;
import
tk.mybatis.mapper.entity.Example
;
import
java.lang.reflect.ParameterizedType
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -62,6 +63,13 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
insertSelectiveRe
(
entity
);
}
public
void
insertMultiSelective
(
List
<
T
>
entitys
)
{
for
(
T
entity
:
entitys
)
{
insertSelectiveRe
(
entity
);
}
}
public
int
insertSelectiveRe
(
T
entity
)
{
EntityUtils
.
setCreatAndUpdatInfo
(
entity
);
return
mapper
.
insertSelective
(
entity
);
...
...
@@ -116,4 +124,5 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
List
<
T
>
list
=
mapper
.
selectByExample
(
example
);
return
new
TableResultResponse
<
T
>(
result
.
getTotal
(),
list
);
}
}
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/dto/UserInfoDTO.java
0 → 100644
View file @
2c16f023
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* 个人中心信息
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 19:38:56
*/
@Data
public
class
UserInfoDTO
{
/**
* 可使用优惠卷个数
*/
@ApiModelProperty
(
value
=
"可使用优惠卷个数"
)
private
Long
couponNumber
;
/**
* 总积分
*/
@ApiModelProperty
(
value
=
"总积分"
)
private
Integer
totalPoint
;
/**
* 钱包总额
*/
@ApiModelProperty
(
value
=
"钱包总额"
)
private
BigDecimal
balance
;
}
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/feign/UserFeign.java
View file @
2c16f023
...
...
@@ -117,6 +117,11 @@ public interface UserFeign {
@GetMapping
(
"/api/app/imi/{imiId}"
)
public
ImiVo
findUserInfoByImiId
(
@PathVariable
(
value
=
"imiId"
)
Integer
imiId
);
ImiVo
findUserInfoByImiId
(
@PathVariable
(
value
=
"imiId"
)
Integer
imiId
);
@GetMapping
(
"/app/user/findusersByIds"
)
Map
<
Integer
,
AppUserLogin
>
findAppUsersByUserIds
(
@RequestParam
(
value
=
"userIds"
)
List
<
Integer
>
userIds
);
@GetMapping
(
"/app/user/finduserIdsByphones"
)
Map
<
String
,
Integer
>
findAppusersByUserNames
(
@RequestParam
(
value
=
"phones"
)
List
<
String
>
phones
);
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserDetailBiz.java
View file @
2c16f023
...
...
@@ -14,6 +14,7 @@ import org.springframework.transaction.annotation.Transactional;
import
tk.mybatis.mapper.entity.Example
;
import
java.time.Instant
;
import
java.util.Collection
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -110,9 +111,16 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
criteria
.
andIn
(
"userid"
,
memberIds
);
List
<
AppUserDetail
>
appUserDetails
=
mapper
.
selectByExample
(
example
);
if
(
CollectionUtils
.
isNotEmpty
(
appUserDetails
)){
if
(
CollectionUtils
.
isNotEmpty
(
appUserDetails
))
{
userIdAndAppUserDetailMap
=
appUserDetails
.
stream
().
collect
(
Collectors
.
toMap
(
AppUserDetail:
:
getUserid
,
Function
.
identity
()));
}
return
userIdAndAppUserDetailMap
;
}
public
void
deleteByUserIds
(
Collection
<
Integer
>
userIds
)
{
Example
example
=
new
Example
(
AppUserDetail
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"userid"
,
userIds
);
mapper
.
deleteByExample
(
example
);
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
View file @
2c16f023
...
...
@@ -198,4 +198,11 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
public
void
available
(
AppUserLogin
appUserLogin
)
{
mapper
.
updateByPrimaryKeySelective
(
appUserLogin
);
}
public
void
deleteByPhones
(
List
<
String
>
phons
)
{
Example
example
=
new
Example
(
AppUserLogin
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"username"
,
phons
);
mapper
.
deleteByExample
(
example
);
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserRelationBiz.java
View file @
2c16f023
...
...
@@ -241,4 +241,11 @@ public class AppUserRelationBiz extends BaseBiz<AppUserRelationMapper,AppUserRel
memberSateAndCountMap
.
put
(
1
,
activityCount
);
return
memberSateAndCountMap
;
}
public
void
deleteByMemberIds
(
Collection
<
Integer
>
userIds
)
{
Example
example
=
new
Example
(
AppUserRelation
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"userId"
,
userIds
);
mapper
.
deleteByExample
(
example
);
}
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserSellingWaterBiz.java
View file @
2c16f023
...
...
@@ -344,4 +344,11 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
public
BigDecimal
selectTotalIncomeByUserId
(
Integer
userId
)
{
return
mapper
.
selectTotalIncomeByUserId
(
userId
);
}
public
void
deleteByMemberIds
(
Collection
<
Integer
>
userIds
)
{
Example
example
=
new
Example
(
AppUserSellingWater
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"sourceId"
,
userIds
);
mapper
.
deleteByExample
(
example
);
}
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/MyWalletBiz.java
View file @
2c16f023
...
...
@@ -8,6 +8,7 @@ import com.github.wxiaoqi.security.admin.vo.AppletWalletVo;
import
com.github.wxiaoqi.security.admin.vo.WalletPageVo
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -36,6 +37,7 @@ public class MyWalletBiz extends BaseBiz<MyWalletMapper, MyWallet> {
@Autowired
private
MyWalletCathBiz
myWalletCathBiz
;
public
AppletWalletVo
findMyWallet
(
Integer
userId
)
{
AppletWalletVo
appletWalletVo
=
new
AppletWalletVo
();
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/MyWaterBiz.java
View file @
2c16f023
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
biz
;
import
cn.hutool.core.date.DateTime
;
import
com.github.wxiaoqi.security.admin.dto.UserInfoDTO
;
import
com.github.wxiaoqi.security.admin.entity.MyWallet
;
import
com.github.wxiaoqi.security.admin.entity.MyWalletDetail
;
import
com.github.wxiaoqi.security.admin.mapper.MyWalletDetailMapper
;
import
com.github.wxiaoqi.security.admin.mapper.MyWalletMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
...
...
@@ -33,6 +37,9 @@ public class MyWaterBiz extends BaseBiz<MyWalletMapper, MyWallet>{
@Autowired
MyWalletDetailBiz
walletDetailBiz
;
@Autowired
ActivityFeign
activityFeign
;
//我的钱包入账
public
void
updMyWater
(
MyWalletDetail
walletDetail
){
...
...
@@ -149,4 +156,26 @@ public class MyWaterBiz extends BaseBiz<MyWalletMapper, MyWallet>{
myWallet
.
setUpdTime
(
Instant
.
now
().
toEpochMilli
());
return
mapper
.
insertSelective
(
myWallet
);
}
public
ObjectRestResponse
getUserProfit
(
Integer
userId
){
try
{
UserInfoDTO
dto
=
activityFeign
.
getUserInfo
(
userId
);
if
(
dto
==
null
){
dto
=
new
UserInfoDTO
();
dto
.
setCouponNumber
(
0L
);
dto
.
setTotalPoint
(
0
);
}
MyWallet
wallet
=
new
MyWallet
();
wallet
.
setUserId
(
userId
);
wallet
=
selectOne
(
wallet
);
BeanUtils
.
copyProperties
(
wallet
,
dto
);
return
ObjectRestResponse
.
succ
(
dto
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
return
ObjectRestResponse
.
createDefaultFail
();
}
}
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/AppUserController.java
View file @
2c16f023
...
...
@@ -14,10 +14,13 @@ import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import
com.github.wxiaoqi.security.common.rest.CommonBaseController
;
import
com.github.wxiaoqi.security.common.util.Query
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.ws.rs.GET
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -53,6 +56,9 @@ public class AppUserController extends CommonBaseController {
@Autowired
private
UserMemberLevelBiz
userMemberLevelBiz
;
@Autowired
private
MyWaterBiz
myWaterBiz
;
@GetMapping
(
"page"
)
public
TableResultResponse
list
(
@RequestParam
Map
<
String
,
Object
>
params
)
{
Query
query
=
new
Query
(
params
);
...
...
@@ -145,6 +151,17 @@ public class AppUserController extends CommonBaseController {
return
ObjectRestResponse
.
succ
(
userDTO
);
}
@ApiOperation
(
"获取用户收益"
)
@GetMapping
(
"/profit"
)
public
ObjectRestResponse
profit
()
throws
Exception
{
String
username
=
userAuthUtil
.
getInfoFromToken
(
userAuthConfig
.
getToken
(
request
)).
getId
();
if
(
username
==
null
)
{
throw
new
Exception
();
}
Integer
userid
=
Integer
.
parseInt
(
username
);
return
myWaterBiz
.
getUserProfit
(
userid
);
}
/**
* 更新用户信息
* @param userVo
...
...
@@ -170,6 +187,13 @@ public class AppUserController extends CommonBaseController {
return
appUserLoginBiz
.
getUserByUsername
(
username
);
}
@GetMapping
(
"/findusersByIds"
)
public
Map
<
Integer
,
AppUserLogin
>
findAppUsersByUserIds
(
@RequestParam
(
value
=
"userIds"
)
List
<
Integer
>
userIds
){
return
appUserLoginBiz
.
findUserIdAndUserLoginMapByMemberIds
(
userIds
);
}
@GetMapping
(
"/finduserIdsByphones"
)
Map
<
String
,
Integer
>
findAppusersByUserNames
(
@RequestParam
(
value
=
"phones"
)
List
<
String
>
phones
){
return
appUserLoginBiz
.
findPhoneAndUserIdMapByPhones
(
phones
);
}
}
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/DataController.java
0 → 100644
View file @
2c16f023
package
com
.
github
.
wxiaoqi
.
security
.
admin
.
rest
;
import
com.github.wxiaoqi.security.admin.biz.AppUserDetailBiz
;
import
com.github.wxiaoqi.security.admin.biz.AppUserLoginBiz
;
import
com.github.wxiaoqi.security.admin.biz.AppUserRelationBiz
;
import
com.github.wxiaoqi.security.admin.biz.AppUserSellingWaterBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.*
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/24 15:11
*/
@RestController
@RequestMapping
(
"/app/unauth/user_data"
)
public
class
DataController
{
@Autowired
private
AppUserLoginBiz
appUserLoginBiz
;
@Autowired
private
AppUserDetailBiz
appUserDetailBiz
;
@Autowired
private
AppUserRelationBiz
appUserRelationBiz
;
@Autowired
private
AppUserSellingWaterBiz
appUserSellingWaterBiz
;
@Autowired
private
ActivityFeign
activityFeign
;
@GetMapping
(
"/clearwithphone"
)
public
ObjectRestResponse
<
Void
>
clearData
(
@RequestParam
(
"phones"
)
List
<
String
>
phons
)
{
Map
<
String
,
Integer
>
phoneAndUserIdMapByPhones
=
appUserLoginBiz
.
findPhoneAndUserIdMapByPhones
(
phons
);
if
(
Objects
.
nonNull
(
phoneAndUserIdMapByPhones
)){
Collection
<
Integer
>
userIds
=
phoneAndUserIdMapByPhones
.
values
();
appUserLoginBiz
.
deleteByPhones
(
phons
);
appUserDetailBiz
.
deleteByUserIds
(
userIds
);
appUserRelationBiz
.
deleteByMemberIds
(
userIds
);
appUserSellingWaterBiz
.
deleteByMemberIds
(
userIds
);
activityFeign
.
clearDate
(
new
ArrayList
<>(
userIds
));
}
return
ObjectRestResponse
.
succ
();
}
}
\ No newline at end of file
ace-modules/ace-generator/src/main/resources/application.yml
View file @
2c16f023
...
...
@@ -10,9 +10,9 @@ spring:
datasource
:
type
:
com.alibaba.druid.pool.DruidDataSource
driverClassName
:
com.mysql.jdbc.Driver
url
:
jdbc:mysql://10.5.52.
3:3306/xxfc_activity
?useUnicode=true&characterEncoding=UTF-8
url
:
jdbc:mysql://10.5.52.
4:3306/xxfc_order
?useUnicode=true&characterEncoding=UTF-8
username
:
root
password
:
sslcloud123*()
password
:
e4549e9315f19a88
jackson
:
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
...
...
ace-modules/ace-generator/src/main/resources/generator.properties
View file @
2c16f023
#\u4EE3\u7801\u751F\u6210\u5668\uFF0C\u914D\u7F6E\u4FE1\u606F
#\u5305\u540D
package
=
com.xxfc.platform.
activity
package
=
com.xxfc.platform.
order
#\u4F5C\u8005
author
=
zjw
#Email
...
...
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/dto/CouponDTO.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 15:00
*/
@Data
public
class
CouponDTO
{
@ApiModelProperty
(
"主键id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"优惠券标题(有图片则显示图片):无门槛50元优惠券 | 单品最高减2000元"
)
private
String
title
;
@ApiModelProperty
(
value
=
"副标题"
)
private
String
subtitle
;
@ApiModelProperty
(
value
=
"图片"
)
private
String
icon
;
@ApiModelProperty
(
value
=
"可用于:10店铺优惠券 11新人店铺券 20商品优惠券 30类目优惠券 60平台优惠券 61新人平台券"
)
private
Integer
used
;
@ApiModelProperty
(
value
=
"0-全平台;1-租车;2-旅游;3-营地"
)
private
Integer
channel
;
@ApiModelProperty
(
value
=
"0-普通用户;1-会员用户"
)
private
Integer
userType
;
@ApiModelProperty
(
value
=
"1满减券 2叠加满减券 3无门槛券(需要限制大小)"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"1可用于特价商品 2不能 默认不能(商品优惠卷除外)"
)
private
Integer
withSpecial
;
@ApiModelProperty
(
value
=
"店铺或商品流水号"
)
private
String
withSn
;
@ApiModelProperty
(
value
=
"满多少金额"
)
private
BigDecimal
withAmount
;
@ApiModelProperty
(
value
=
"用券抵扣金额"
)
private
BigDecimal
usedAmount
;
@ApiModelProperty
(
value
=
"配额:发券数量"
)
private
Integer
quota
;
@ApiModelProperty
(
value
=
"每人限领次数"
)
private
Integer
limitCollar
;
@ApiModelProperty
(
value
=
"已领取的优惠券数量"
)
private
Integer
takeCount
;
@ApiModelProperty
(
value
=
"已使用的优惠券数量"
)
private
Integer
usedCount
;
@ApiModelProperty
(
value
=
"发放开始时间"
)
private
Long
startTime
;
@ApiModelProperty
(
value
=
"发放结束时间"
)
private
Long
endTime
;
@ApiModelProperty
(
value
=
"时效:1绝对时效(领取后XXX-XXX时间段有效) 2相对时效(领取后N天有效)"
)
private
Integer
validType
;
@ApiModelProperty
(
value
=
"使用开始时间"
)
private
Long
validStartTime
;
@ApiModelProperty
(
value
=
"使用结束时间"
)
private
Long
validEndTime
;
@ApiModelProperty
(
value
=
"自领取之日起有效天数"
)
private
Integer
validDays
;
@ApiModelProperty
(
value
=
"跳转链接"
)
private
String
url
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/dto/CouponFindDTO.java
View file @
2c16f023
...
...
@@ -14,5 +14,9 @@ public class CouponFindDTO extends PageParam {
private
String
title
;
private
Integer
channel
;
private
Integer
type
;
private
Integer
status
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/dto/UserCouponDTO.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 17:06
*/
@Data
public
class
UserCouponDTO
{
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
userId
;
@ApiModelProperty
(
value
=
"标题"
)
private
String
title
;
@ApiModelProperty
(
value
=
"抵扣金额"
)
private
BigDecimal
usedAmount
;
@ApiModelProperty
(
value
=
"0-未使用;1-已使用"
)
private
Integer
isUse
;
@ApiModelProperty
(
value
=
"领卷时间"
,
hidden
=
true
)
private
Long
crtTime
;
@ApiModelProperty
(
value
=
"到期时间"
,
hidden
=
true
)
private
Long
expireTime
;
@ApiModelProperty
(
value
=
"使用时间"
)
private
Long
useTime
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/dto/UserCouponFindDTO.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
dto
;
import
com.github.wxiaoqi.security.common.vo.PageParam
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 16:26
*/
@Data
public
class
UserCouponFindDTO
extends
PageParam
{
private
String
phone
;
private
Integer
couponId
;
private
BigDecimal
usedAmount
;
private
Integer
status
;
private
Integer
userId
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/dto/UserCouponSendDTO.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
dto
;
import
lombok.Data
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 18:02
*/
@Data
public
class
UserCouponSendDTO
{
private
String
phone
;
private
Integer
couponId
;
private
Integer
couponNum
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/entity/ActivityList.java
View file @
2c16f023
...
...
@@ -111,5 +111,8 @@ public class ActivityList implements Serializable {
@ApiModelProperty
(
value
=
"活动页面链接"
)
private
String
url
;
@Column
(
name
=
"time_type"
)
@ApiModelProperty
(
"活动时期类型:0-永久,1-有期限"
)
private
Integer
timeType
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/feign/ActivityFeign.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
feign
;
import
com.github.wxiaoqi.security.admin.dto.UserInfoDTO
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.activity.entity.IntegralUserTotal
;
import
com.xxfc.platform.activity.vo.UserCouponVo
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -49,4 +52,12 @@ public interface ActivityFeign {
@RequestMapping
(
value
=
"/join/user"
,
method
=
RequestMethod
.
POST
)
public
ObjectRestResponse
join
(
@RequestParam
(
value
=
"userId"
,
defaultValue
=
"0"
)
Integer
userId
);
@ApiModelProperty
(
"获取用户积分"
)
@GetMapping
(
value
=
"/user/info"
)
public
UserInfoDTO
getUserInfo
(
@RequestParam
(
"userId"
)
Integer
userId
);
@ApiOperation
(
"清除数据"
)
@GetMapping
(
"/activity_data/clear"
)
ObjectRestResponse
<
Void
>
clearDate
(
@RequestParam
(
value
=
"userIds"
)
List
<
Integer
>
userIds
);
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/vo/CouponPagVo.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
...
...
@@ -11,4 +14,44 @@ import lombok.Data;
@Data
public
class
CouponPagVo
{
@ApiModelProperty
(
"主键id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"优惠券标题(有图片则显示图片):无门槛50元优惠券 | 单品最高减2000元"
)
private
String
title
;
@ApiModelProperty
(
value
=
"图片"
)
private
String
icon
;
@ApiModelProperty
(
value
=
"0-全平台;1-租车;2-旅游;3-营地"
)
private
Integer
channel
;
@ApiModelProperty
(
value
=
"1满减券 2叠加满减券 3无门槛券(需要限制大小)"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"用券抵扣金额"
)
private
BigDecimal
usedAmount
;
@ApiModelProperty
(
value
=
"配额:发券数量"
)
private
Integer
quota
;
@ApiModelProperty
(
value
=
"已领取的优惠券数量"
)
private
Integer
takeCount
;
@ApiModelProperty
(
value
=
"已使用的优惠券数量"
)
private
Integer
usedCount
;
@ApiModelProperty
(
value
=
"1生效 2失效 3已结束"
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Long
crtTime
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/vo/CouponTitleVo.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
vo
;
import
lombok.Data
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 18:11
*/
@Data
public
class
CouponTitleVo
{
private
Integer
id
;
private
String
title
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/vo/CouponVo.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 15:00
*/
@Data
public
class
CouponVo
{
@ApiModelProperty
(
"主键id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"优惠券标题(有图片则显示图片):无门槛50元优惠券 | 单品最高减2000元"
)
private
String
title
;
@ApiModelProperty
(
value
=
"副标题"
)
private
String
subtitle
;
@ApiModelProperty
(
value
=
"图片"
)
private
String
icon
;
@ApiModelProperty
(
value
=
"可用于:10店铺优惠券 11新人店铺券 20商品优惠券 30类目优惠券 60平台优惠券 61新人平台券"
)
private
Integer
used
;
@ApiModelProperty
(
value
=
"0-全平台;1-租车;2-旅游;3-营地"
)
private
Integer
channel
;
@ApiModelProperty
(
value
=
"0-普通用户;1-会员用户"
)
private
Integer
userType
;
@ApiModelProperty
(
value
=
"1满减券 2叠加满减券 3无门槛券(需要限制大小)"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"1可用于特价商品 2不能 默认不能(商品优惠卷除外)"
)
private
Integer
withSpecial
;
@ApiModelProperty
(
value
=
"店铺或商品流水号"
)
private
String
withSn
;
@ApiModelProperty
(
value
=
"满多少金额"
)
private
BigDecimal
withAmount
;
@ApiModelProperty
(
value
=
"用券抵扣金额"
)
private
BigDecimal
usedAmount
;
@ApiModelProperty
(
value
=
"配额:发券数量"
)
private
Integer
quota
;
@ApiModelProperty
(
value
=
"每人限领次数"
)
private
Integer
limitCollar
;
@ApiModelProperty
(
value
=
"已领取的优惠券数量"
)
private
Integer
takeCount
;
@ApiModelProperty
(
value
=
"已使用的优惠券数量"
)
private
Integer
usedCount
;
@ApiModelProperty
(
value
=
"发放开始时间"
)
private
Long
startTime
;
@ApiModelProperty
(
value
=
"发放结束时间"
)
private
Long
endTime
;
@ApiModelProperty
(
value
=
"时效:1绝对时效(领取后XXX-XXX时间段有效) 2相对时效(领取后N天有效)"
)
private
Integer
validType
;
@ApiModelProperty
(
value
=
"使用开始时间"
)
private
Long
validStartTime
;
@ApiModelProperty
(
value
=
"使用结束时间"
)
private
Long
validEndTime
;
@ApiModelProperty
(
value
=
"自领取之日起有效天数"
)
private
Integer
validDays
;
@ApiModelProperty
(
value
=
"跳转链接"
)
private
String
url
;
}
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/vo/UserCouponPageVo.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 16:29
*/
@Data
public
class
UserCouponPageVo
{
private
Integer
id
;
@ApiModelProperty
(
value
=
"手机号"
)
private
String
phone
;
@ApiModelProperty
(
value
=
"标题"
)
private
String
title
;
@ApiModelProperty
(
value
=
"抵扣金额"
)
private
BigDecimal
usedAmount
;
@ApiModelProperty
(
value
=
"0-未使用;1-已使用"
)
private
Integer
isUse
;
@ApiModelProperty
(
value
=
"领卷时间"
,
hidden
=
true
)
private
Long
crtTime
;
@ApiModelProperty
(
value
=
"到期时间"
,
hidden
=
true
)
private
Long
expireTime
;
@ApiModelProperty
(
value
=
"使用时间"
)
private
Long
useTime
;
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/ActivityApplication.java
View file @
2c16f023
...
...
@@ -20,7 +20,8 @@ import tk.mybatis.spring.annotation.MapperScan;
@SpringBootApplication
(
scanBasePackages
=
{
"com.xxfc.platform"
,
"com.github.wxiaoqi.security.common.handler"
,
"com.github.wxiaoqi.security.common.log"
"com.github.wxiaoqi.security.common.log"
,
"com.github.wxiaoqi.security.admin.support.aop"
})
@EnableDiscoveryClient
@EnableScheduling
...
...
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/ActivityPopularizeUserBiz.java
View file @
2c16f023
...
...
@@ -7,6 +7,9 @@ import org.springframework.stereotype.Service;
import
com.xxfc.platform.activity.entity.ActivityPopularizeUser
;
import
com.xxfc.platform.activity.mapper.ActivityPopularizeUserMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
tk.mybatis.mapper.entity.Example
;
import
java.util.List
;
/**
* 用户与推广活动(邀请有礼)的关系表
...
...
@@ -24,4 +27,11 @@ public class ActivityPopularizeUserBiz extends BaseBiz<ActivityPopularizeUserMap
throw
new
BaseException
(
ResultCode
.
DB_OPERATION_FAIL_CODE
);
}
}
public
void
deleteByUserIds
(
List
<
Integer
>
userIds
)
{
Example
example
=
new
Example
(
ActivityPopularizeUser
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"userId"
,
userIds
);
mapper
.
deleteByExample
(
example
);
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/CouponBiz.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
biz
;
import
com.github.wxiaoqi.security.admin.feign.dto.UserDTO
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.activity.constant.CouponUsed
;
import
com.xxfc.platform.activity.dto.CouponDTO
;
import
com.xxfc.platform.activity.dto.CouponFindDTO
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.vo.CouponPagVo
;
import
com.xxfc.platform.activity.vo.CouponTitleVo
;
import
com.xxfc.platform.activity.vo.CouponVo
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
com.xxfc.platform.activity.mapper.CouponMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.StringUtils
;
import
tk.mybatis.mapper.entity.Example
;
import
java.time.Instant
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
/**
* 优惠券表
...
...
@@ -31,4 +44,82 @@ public class CouponBiz extends BaseBiz<CouponMapper, Coupon> {
}
return
null
;
}
public
PageDataVO
<
CouponPagVo
>
listCouponWithPage
(
CouponFindDTO
couponFindDTO
)
{
PageDataVO
<
CouponPagVo
>
couponPagVo
=
new
PageDataVO
<>();
Example
example
=
new
Example
(
Coupon
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
if
(!
StringUtils
.
isEmpty
(
couponFindDTO
.
getTitle
())){
criteria
.
andLike
(
"title"
,
String
.
format
(
"%%%s%%"
,
couponFindDTO
.
getTitle
()));
}
if
(
Objects
.
nonNull
(
couponFindDTO
.
getChannel
())){
criteria
.
andEqualTo
(
"channel"
,
couponFindDTO
.
getChannel
());
}
if
(
Objects
.
nonNull
(
couponFindDTO
.
getType
())){
criteria
.
andEqualTo
(
"type"
,
couponFindDTO
.
getType
());
}
if
(
Objects
.
nonNull
(
couponFindDTO
.
getStatus
())){
criteria
.
andEqualTo
(
"status"
,
couponFindDTO
.
getStatus
());
}
criteria
.
andEqualTo
(
"isDel"
,
0
);
example
.
setOrderByClause
(
"crt_time DESC"
);
PageDataVO
<
Coupon
>
couponPage
=
PageDataVO
.
pageInfo
(
couponFindDTO
.
getPage
(),
couponFindDTO
.
getLimit
(),
()
->
mapper
.
selectByExample
(
example
));
List
<
Coupon
>
data
=
couponPage
.
getData
();
if
(
CollectionUtils
.
isEmpty
(
data
)){
return
couponPagVo
;
}
List
<
CouponPagVo
>
couponPagVos
=
new
ArrayList
<>();
CouponPagVo
coupon
;
for
(
Coupon
coup
:
data
)
{
coupon
=
new
CouponPagVo
();
BeanUtils
.
copyProperties
(
coup
,
coupon
);
couponPagVos
.
add
(
coupon
);
}
couponPagVo
.
setPageNum
(
couponPage
.
getPageNum
());
couponPagVo
.
setPageSize
(
couponPage
.
getTotalPage
());
couponPagVo
.
setTotalPage
(
couponPage
.
getTotalPage
());
couponPagVo
.
setTotalCount
(
couponPage
.
getTotalCount
());
couponPagVo
.
setData
(
couponPagVos
);
return
couponPagVo
;
}
public
CouponVo
findCouponById
(
Integer
id
)
{
CouponVo
couponVo
=
new
CouponVo
();
Coupon
coupon
=
mapper
.
selectByPrimaryKey
(
id
);
BeanUtils
.
copyProperties
(
coupon
,
couponVo
);
return
couponVo
;
}
public
int
addCoupon
(
CouponDTO
couponDTO
,
UserDTO
userDTO
)
{
Coupon
coupon
=
new
Coupon
();
BeanUtils
.
copyProperties
(
couponDTO
,
coupon
);
if
(
Objects
.
nonNull
(
couponDTO
.
getId
())){
coupon
.
setUpdTime
(
Instant
.
now
().
toEpochMilli
());
coupon
.
setUpdUser
(
userDTO
.
getId
());
coupon
.
setUpdName
(
userDTO
.
getUsername
());
return
mapper
.
updateByPrimaryKeySelective
(
coupon
);
}
else
{
coupon
.
setCrtTime
(
Instant
.
now
().
toEpochMilli
());
coupon
.
setCrtUser
(
userDTO
.
getId
());
coupon
.
setCrtName
(
userDTO
.
getUsername
());
return
mapper
.
insertSelective
(
coupon
);
}
}
public
int
updateCouponDelStateById
(
Integer
id
,
UserDTO
userDTO
)
{
Coupon
coupon
=
new
Coupon
();
coupon
.
setId
(
id
);
coupon
.
setUpdName
(
userDTO
.
getUsername
());
coupon
.
setUpdUser
(
userDTO
.
getId
());
coupon
.
setUpdTime
(
Instant
.
now
().
toEpochMilli
());
coupon
.
setIsDel
(
1
);
return
mapper
.
updateByPrimaryKeySelective
(
coupon
);
}
public
List
<
CouponTitleVo
>
getCouponTitleList
()
{
return
mapper
.
selectTitles
();
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/IntegralUserTotalBiz.java
View file @
2c16f023
...
...
@@ -132,4 +132,5 @@ public class IntegralUserTotalBiz extends BaseBiz<IntegralUserTotalMapper, Integ
}
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/UserCouponBiz.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
biz
;
import
com.alibaba.fastjson.JSONObject
;
import
com.github.wxiaoqi.security.admin.dto.UserInfoDTO
;
import
com.github.wxiaoqi.security.admin.entity.AppUserLogin
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.github.wxiaoqi.security.common.util.process.SystemConfig
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.activity.constant.CouponUsed
;
import
com.xxfc.platform.activity.dto.UserCouponDTO
;
import
com.xxfc.platform.activity.dto.UserCouponFindDTO
;
import
com.xxfc.platform.activity.dto.UserCouponSendDTO
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.entity.IntegralUserTotal
;
import
com.xxfc.platform.activity.entity.UserCoupon
;
import
com.xxfc.platform.activity.vo.CouponVo
;
import
com.xxfc.platform.activity.vo.UserCouponPageVo
;
import
com.xxfc.platform.activity.vo.UserCouponVo
;
import
com.xxfc.platform.universal.weixin.util.Snowflake
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.assertj.core.util.Arrays
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.xxfc.platform.activity.mapper.UserCouponMapper
;
...
...
@@ -19,9 +31,9 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
import
tk.mybatis.mapper.entity.Example
;
import
java.math.BigDecimal
;
import
java.
util.ArrayLis
t
;
import
java.util.
Comparator
;
import
java.util.
List
;
import
java.
time.Instan
t
;
import
java.util.
*
;
import
java.util.
stream.Collectors
;
/**
* 我的优惠卷
...
...
@@ -38,6 +50,12 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
@Autowired
private
CouponBiz
couponBiz
;
@Autowired
private
UserFeign
userFeign
;
@Autowired
private
IntegralUserTotalBiz
integralUserTotalBiz
;
private
static
final
Long
DAY
=
86400000L
;
//自动发送优惠卷
...
...
@@ -235,6 +253,95 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
}
public
PageDataVO
<
UserCouponPageVo
>
listUserCouponWithPage
(
UserCouponFindDTO
userCouponFindDTO
)
{
PageDataVO
<
UserCouponPageVo
>
userCouponPag
=
new
PageDataVO
<>();
if
(
StringUtils
.
isNotEmpty
(
userCouponFindDTO
.
getPhone
()))
{
AppUserLogin
appUserLogin
=
userFeign
.
one
(
userCouponFindDTO
.
getPhone
());
userCouponFindDTO
.
setUserId
(
appUserLogin
.
getId
());
}
PageDataVO
<
UserCouponDTO
>
pageDataVO
=
PageDataVO
.
pageInfo
(
userCouponFindDTO
.
getPage
(),
userCouponFindDTO
.
getLimit
(),
()
->
mapper
.
findUserCoupons
(
userCouponFindDTO
));
List
<
UserCouponDTO
>
data
=
pageDataVO
.
getData
();
if
(
CollectionUtils
.
isEmpty
(
data
))
{
return
userCouponPag
;
}
Map
<
Integer
,
AppUserLogin
>
userIdAndAppuserLoginMap
=
null
;
if
(
Objects
.
nonNull
(
userCouponFindDTO
.
getPhone
()))
{
List
<
Integer
>
userIds
=
data
.
stream
().
map
(
UserCouponDTO:
:
getUserId
).
collect
(
Collectors
.
toList
());
userIdAndAppuserLoginMap
=
userFeign
.
findAppUsersByUserIds
(
userIds
);
}
List
<
UserCouponPageVo
>
userCouponPageVos
=
new
ArrayList
<>();
UserCouponPageVo
userCouponPageVo
;
for
(
UserCouponDTO
userCouponDTO
:
data
)
{
userCouponPageVo
=
new
UserCouponPageVo
();
BeanUtils
.
copyProperties
(
userCouponDTO
,
userCouponPageVo
);
if
(
Objects
.
nonNull
(
userCouponFindDTO
.
getPhone
()))
{
userCouponPageVo
.
setPhone
(
userCouponFindDTO
.
getPhone
());
}
else
{
userCouponPageVo
.
setPhone
(
userIdAndAppuserLoginMap
==
null
?
""
:
userIdAndAppuserLoginMap
.
get
(
userCouponDTO
.
getUserId
())
==
null
?
""
:
userIdAndAppuserLoginMap
.
get
(
userCouponDTO
.
getUserId
()).
getUsername
());
}
userCouponPageVos
.
add
(
userCouponPageVo
);
}
userCouponPag
.
setPageSize
(
pageDataVO
.
getPageSize
());
userCouponPag
.
setPageNum
(
pageDataVO
.
getPageNum
());
userCouponPag
.
setTotalCount
(
pageDataVO
.
getTotalCount
());
userCouponPag
.
setTotalPage
(
pageDataVO
.
getTotalPage
());
userCouponPag
.
setData
(
userCouponPageVos
);
return
userCouponPag
;
}
public
int
sendCoupon
(
UserCouponSendDTO
userCouponSendDTO
)
{
AppUserLogin
appUserLogin
=
userFeign
.
one
(
userCouponSendDTO
.
getPhone
());
CouponVo
couponVo
=
couponBiz
.
findCouponById
(
userCouponSendDTO
.
getCouponId
());
UserCoupon
userCoupon
;
List
<
UserCoupon
>
userCoupons
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
userCouponSendDTO
.
getCouponNum
();
i
++){
userCoupon
=
new
UserCoupon
();
userCoupon
.
setCouponId
(
userCouponSendDTO
.
getCouponId
());
userCoupon
.
setUserId
(
appUserLogin
.
getId
());
userCoupon
.
setCrtTime
(
Instant
.
now
().
toEpochMilli
());
userCoupon
.
setStartTime
(
couponVo
.
getValidStartTime
());
userCoupon
.
setExpireTime
(
couponVo
.
getValidEndTime
());
userCoupons
.
add
(
userCoupon
);
}
return
mapper
.
inserBatch
(
userCoupons
);
}
public
long
importUserCoupon
(
Integer
couponId
,
List
<
String
[]>
userCounponData
)
{
List
<
String
>
phones
=
userCounponData
.
stream
().
map
(
x
->
x
[
0
]).
collect
(
Collectors
.
toList
());
Map
<
String
,
Integer
>
phoneAndAppUserLoginMap
=
userFeign
.
findAppusersByUserNames
(
phones
);
CouponVo
couponVo
=
couponBiz
.
findCouponById
(
couponId
);
UserCoupon
userCoupon
;
List
<
UserCoupon
>
userCoupons
=
new
ArrayList
<>();
long
length
=
userCounponData
.
size
();
for
(
int
i
=
0
;
i
<
length
;
i
++){
userCoupon
=
new
UserCoupon
();
userCoupon
.
setCouponId
(
couponId
);
userCoupon
.
setStartTime
(
couponVo
.
getValidStartTime
());
userCoupon
.
setExpireTime
(
couponVo
.
getValidEndTime
());
userCoupon
.
setCrtTime
(
Instant
.
now
().
toEpochMilli
());
userCoupon
.
setUserId
(
phoneAndAppUserLoginMap
.
get
(
userCounponData
.
get
(
i
)[
0
]));
userCoupons
.
add
(
userCoupon
);
}
return
mapper
.
inserBatch
(
userCoupons
);
}
public
UserInfoDTO
getUserInfo
(
Integer
userId
)
throws
Exception
{
UserInfoDTO
userInfoDTO
=
new
UserInfoDTO
();
IntegralUserTotal
integralUserTotal
=
new
IntegralUserTotal
();
integralUserTotal
.
setUserId
(
userId
);
integralUserTotal
=
integralUserTotalBiz
.
selectOne
(
integralUserTotal
);
BeanUtils
.
copyProperties
(
integralUserTotal
,
userInfoDTO
);
UserCoupon
userCoupon
=
new
UserCoupon
();
userCoupon
.
setUserId
(
userId
);
userCoupon
.
setIsUse
(
0
);
Long
couponNumber
=
selectCount
(
userCoupon
);
userInfoDTO
.
setCouponNumber
(
couponNumber
);
return
userInfoDTO
;
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/config/SwaggerConfig.java
View file @
2c16f023
...
...
@@ -49,10 +49,9 @@ public class SwaggerConfig {
pars
.
add
(
ticketPar2
.
build
());
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
host
(
"10.1.37.248:8765/api/activity"
)
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.xxfc.platform.activity"
))
//
.apis(RequestHandlerSelectors.any())
.
apis
(
RequestHandlerSelectors
.
any
())
.
build
()
.
globalOperationParameters
(
pars
)
.
apiInfo
(
apiInfo
());
...
...
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/mapper/CouponMapper.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
mapper
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.vo.CouponTitleVo
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
/**
* 优惠券表
*
...
...
@@ -12,4 +15,5 @@ import tk.mybatis.mapper.common.Mapper;
*/
public
interface
CouponMapper
extends
Mapper
<
Coupon
>
{
List
<
CouponTitleVo
>
selectTitles
();
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/mapper/UserCouponMapper.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
mapper
;
import
com.xxfc.platform.activity.dto.UserCouponDTO
;
import
com.xxfc.platform.activity.dto.UserCouponFindDTO
;
import
com.xxfc.platform.activity.entity.UserCoupon
;
import
com.xxfc.platform.activity.vo.UserCouponVo
;
import
org.apache.ibatis.annotations.Param
;
import
tk.mybatis.mapper.additional.insert.InsertListMapper
;
import
org.apache.ibatis.annotations.Update
;
import
tk.mybatis.mapper.common.Mapper
;
...
...
@@ -15,7 +18,7 @@ import java.util.List;
* @email 18178966185@163.com
* @date 2019-06-21 14:34:49
*/
public
interface
UserCouponMapper
extends
Mapper
<
UserCoupon
>
{
public
interface
UserCouponMapper
extends
Mapper
<
UserCoupon
>
,
InsertListMapper
<
UserCoupon
>
{
//我的优惠卷
public
List
<
UserCouponVo
>
getUserCouponsByType
(
@Param
(
"userId"
)
Integer
userId
,
@Param
(
"type"
)
int
type
,
@Param
(
"time"
)
Long
time
,
@Param
(
"channel"
)
Integer
channel
);
...
...
@@ -27,4 +30,8 @@ public interface UserCouponMapper extends Mapper<UserCoupon> {
@Update
(
"update coupon set used_count=used_count+#{count} where `id`=#{id}"
)
int
upUsedCount
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"count"
)
Integer
count
);
List
<
UserCouponDTO
>
findUserCoupons
(
UserCouponFindDTO
userCouponFindDTO
);
int
inserBatch
(
@Param
(
"userCoupons"
)
List
<
UserCoupon
>
userCoupons
);
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/rest/DateController.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
rest
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.activity.biz.ActivityPopularizeUserBiz
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/24 14:58
*/
@RestController
@RequestMapping
(
"/activity_data"
)
public
class
DateController
{
@Autowired
private
ActivityPopularizeUserBiz
activityPopularizeUserBiz
;
@GetMapping
(
"/clear"
)
public
ObjectRestResponse
<
Void
>
clearDate
(
@RequestParam
(
value
=
"userIds"
)
List
<
Integer
>
userIds
){
activityPopularizeUserBiz
.
deleteByUserIds
(
userIds
);
return
ObjectRestResponse
.
succ
();
}
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/rest/UserCouponController.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
rest
;
import
com.github.wxiaoqi.security.admin.dto.UserInfoDTO
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
...
...
@@ -98,7 +99,11 @@ public class UserCouponController extends ActivityBaseController<UserCouponBiz>
}
@ApiOperation
(
"获取用户信息"
)
@GetMapping
(
value
=
"/info"
)
public
UserInfoDTO
getUserInfo
(
@RequestParam
(
"userId"
)
Integer
userId
)
throws
Exception
{
return
baseBiz
.
getUserInfo
(
userId
);
}
}
\ No newline at end of file
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/rest/admin/CouponAdminController.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
rest
.
admin
;
import
com.github.wxiaoqi.security.admin.feign.dto.UserDTO
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.activity.biz.CouponBiz
;
import
com.xxfc.platform.activity.dto.CouponDTO
;
import
com.xxfc.platform.activity.dto.CouponFindDTO
;
import
com.xxfc.platform.activity.vo.CouponPagVo
;
import
com.xxfc.platform.activity.vo.CouponTitleVo
;
import
com.xxfc.platform.activity.vo.CouponVo
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.
GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.
*
;
import
java.util.List
;
/**
* @author libin
...
...
@@ -21,10 +28,44 @@ public class CouponAdminController {
@Autowired
private
CouponBiz
couponBiz
;
@ApiOperation
(
"优惠券列表"
)
@GetMapping
(
"/page"
)
public
ObjectRestResponse
listCouponWithPage
(
CouponFindDTO
couponFindDTO
){
public
ObjectRestResponse
<
PageDataVO
<
CouponPagVo
>>
listCouponWithPage
(
CouponFindDTO
couponFindDTO
)
{
PageDataVO
<
CouponPagVo
>
couponPage
=
couponBiz
.
listCouponWithPage
(
couponFindDTO
);
return
ObjectRestResponse
.
succ
(
couponPage
);
}
@ApiOperation
(
"查询优惠券详情"
)
@GetMapping
(
"/{id}"
)
public
ObjectRestResponse
<
CouponVo
>
findCouponById
(
@PathVariable
(
value
=
"id"
)
Integer
id
){
CouponVo
couponVo
=
couponBiz
.
findCouponById
(
id
);
return
ObjectRestResponse
.
succ
(
couponVo
);
}
@ApiOperation
(
"获取优惠劵标题列表"
)
@GetMapping
(
"/titles"
)
public
ObjectRestResponse
<
List
<
CouponTitleVo
>>
getCouponTitleList
(){
List
<
CouponTitleVo
>
titles
=
couponBiz
.
getCouponTitleList
();
return
ObjectRestResponse
.
succ
(
titles
);
}
@ApiOperation
(
"优惠劵新增 或 编辑"
)
@PostMapping
public
ObjectRestResponse
<
Void
>
addCoupon
(
@RequestBody
CouponDTO
couponDTO
,
UserDTO
userDTO
){
couponBiz
.
addCoupon
(
couponDTO
,
userDTO
);
return
ObjectRestResponse
.
succ
();
}
@ApiOperation
(
"优惠劵逻辑删除"
)
@DeleteMapping
(
"/{id}"
)
public
ObjectRestResponse
<
Void
>
deleteCouponById
(
@PathVariable
(
value
=
"id"
)
Integer
id
,
UserDTO
userDTO
){
couponBiz
.
updateCouponDelStateById
(
id
,
userDTO
);
return
ObjectRestResponse
.
succ
();
}
@ApiOperation
(
"检查优惠劵是否已经在使用阶段"
)
@GetMapping
(
"check/{id}"
)
public
Boolean
checkCouponHasUsedById
(
@PathVariable
(
value
=
"id"
)
Integer
id
){
return
false
;
}
}
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/rest/admin/UserCouponAdminController.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
activity
.
rest
.
admin
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.excel.ExcelImport
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.activity.ActivityApplication
;
import
com.xxfc.platform.activity.biz.UserCouponBiz
;
import
com.xxfc.platform.activity.dto.UserCouponFindDTO
;
import
com.xxfc.platform.activity.dto.UserCouponSendDTO
;
import
com.xxfc.platform.activity.vo.UserCouponPageVo
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.io.IOUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.List
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/23 16:22
*/
@RestController
@RequestMapping
(
"/admin/user_coupon"
)
public
class
UserCouponAdminController
{
@Autowired
private
UserCouponBiz
userCouponBiz
;
@ApiOperation
(
"领劵列表"
)
@GetMapping
(
"/page"
)
public
ObjectRestResponse
<
PageDataVO
<
UserCouponPageVo
>>
listUserCouponWithPage
(
UserCouponFindDTO
userCouponFindDTO
)
{
PageDataVO
<
UserCouponPageVo
>
userCouponPage
=
userCouponBiz
.
listUserCouponWithPage
(
userCouponFindDTO
);
return
ObjectRestResponse
.
succ
(
userCouponPage
);
}
@PostMapping
(
"/sendcoupon"
)
public
ObjectRestResponse
<
Void
>
sendCoupon
(
UserCouponSendDTO
userCouponSendDTO
){
userCouponBiz
.
sendCoupon
(
userCouponSendDTO
);
return
ObjectRestResponse
.
succ
();
}
@PostMapping
(
"/import"
)
public
ObjectRestResponse
<
Void
>
importCouponBatch
(
@RequestParam
(
"couponId"
)
Integer
couponId
,
@RequestPart
(
name
=
"file"
)
MultipartFile
couponExcel
){
List
<
String
[]>
userCounponData
=
ExcelImport
.
getExcelData
(
couponExcel
);
if
(
userCounponData
.
size
()
<
1
)
{
return
ObjectRestResponse
.
createFailedResult
(
1001
,
"导入不能没数据!!!"
);
}
userCounponData
.
remove
(
0
);
userCouponBiz
.
importUserCoupon
(
couponId
,
userCounponData
);
return
ObjectRestResponse
.
succ
();
}
@ApiOperation
(
"用户劵excel模板下载"
)
@GetMapping
(
"/excel_model/dowload"
)
public
ResponseEntity
<
byte
[]>
dowloadUserMemberExcelModel
(
HttpServletResponse
response
)
{
// 重置response
response
.
reset
();
response
.
setCharacterEncoding
(
"utf-8"
);
response
.
setContentType
(
"multipart/form-data"
);
response
.
addHeader
(
"Content-Disposition"
,
"attachment;filename=usercoupon.xlsx"
);
InputStream
inputStream
=
ActivityApplication
.
class
.
getClassLoader
().
getResourceAsStream
(
"file/usercoupon.xlsx"
);
try
{
byte
[]
bytes
=
IOUtils
.
toByteArray
(
inputStream
);
return
ResponseEntity
.
ok
(
bytes
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
ResponseEntity
.
status
(
HttpStatus
.
BAD_REQUEST
).
body
(
null
);
}
}
xx-activity/xx-activity-server/src/main/resources/file/usercoupon.xlsx
0 → 100644
View file @
2c16f023
File added
xx-activity/xx-activity-server/src/main/resources/mapper/CouponMapper.xml
View file @
2c16f023
...
...
@@ -37,4 +37,7 @@
<result
property=
"isDel"
column=
"is_del"
/>
</resultMap>
<select
id=
"selectTitles"
resultType=
"com.xxfc.platform.activity.vo.CouponTitleVo"
>
select `id`,`title` from `coupon` where `is_del`=0
</select>
</mapper>
\ No newline at end of file
xx-activity/xx-activity-server/src/main/resources/mapper/UserCouponMapper.xml
View file @
2c16f023
...
...
@@ -72,4 +72,41 @@
u.is_del = 0 and u.ticker_no=#{tickerNo} limit 1
</select>
<select
id=
"findUserCoupons"
resultType=
"com.xxfc.platform.activity.dto.UserCouponDTO"
parameterType=
"com.xxfc.platform.activity.dto.UserCouponFindDTO"
>
SELECT
uc.id,
uc.user_id AS `userId`,
uc.is_use AS `isUse`,
cp.title,
cp.used_amount AS `usedAmount`,
uc.crt_time AS `crtTime`,
uc.expire_time AS `expireTime`,
uc.use_time AS `useTime`
FROM
( SELECT `id`, `coupon_id`, `user_id`, `is_use`, `crt_time`, `expire_time`, `use_time` FROM `user_coupon` WHERE
`is_del` = 0
<if
test=
"userId != null"
>
AND `user_id`=#{userId}
</if>
<if
test=
"status != null"
>
AND `is_use`=#{status}
</if>
) AS `uc`
INNER JOIN ( SELECT `id`, `title`, `used_amount` FROM `coupon` WHERE 1=1
<if
test=
"couponId != null"
>
AND `id`=#{couponId}
</if>
<if
test=
"usedAmount != null"
>
AND `used_amount`=#{usedAmount}
</if>
) AS `cp` ON uc.coupon_id = cp.id order by `crtTime` DESC
</select>
<insert
id=
"inserBatch"
>
INSERT INTO `user_coupon`(`user_id`,`coupon_id`,`start_time`,`expire_time`,`crt_time`) VALUES
<foreach
collection=
"userCoupons"
item=
"userCoupon"
separator=
","
>
(#{userCoupon.userId},#{userCoupon.couponId},#{userCoupon.startTime},#{userCoupon.expireTime},#{userCoupon.crtTime} )
</foreach>
</insert>
</mapper>
\ No newline at end of file
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/ItemTypeEnum.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
java.util.HashMap
;
import
java.util.Map
;
public
enum
ItemTypeEnum
{
//item 类型 101--租车车型 102--车损免赔 103--司机费用 201--旅游成人 202--旅游儿童 203--旅游保险 301--会员
VEHICLE_MODEL
(
101
,
"租车车型"
),
DAMAGE_SAFE
(
102
,
"车损免赔"
),
DRIVER
(
103
,
"司机"
),
TOUR_ADULT
(
201
,
"旅游成人"
),
TOUR_CHILD
(
202
,
"旅游儿童"
),
TOUR_INSURE
(
203
,
"旅游保险"
),
MEMBER
(
301
,
"会员"
),
;
/**
* 编码
*/
private
Integer
code
;
/**
* 类型描述
*/
private
String
desc
;
public
static
Map
<
Integer
,
ItemTypeEnum
>
codeAndDesc
=
new
HashMap
<
Integer
,
ItemTypeEnum
>();
//Maps.newHashMap();
static
{
for
(
ItemTypeEnum
enumE
:
ItemTypeEnum
.
values
()){
codeAndDesc
.
put
(
enumE
.
getCode
(),
enumE
);
}
}
ItemTypeEnum
(
Integer
code
,
String
desc
){
this
.
code
=
code
;
this
.
desc
=
desc
;
}
public
Integer
getCode
()
{
return
code
;
}
public
void
setCode
(
Integer
code
)
{
this
.
code
=
code
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
public
static
Boolean
exists
(
Integer
code
){
return
codeAndDesc
.
containsKey
(
code
);
}
public
static
ItemTypeEnum
get
(
Integer
code
)
{
for
(
ItemTypeEnum
enumE
:
ItemTypeEnum
.
values
())
{
if
(
enumE
.
getCode
().
equals
(
code
))
{
return
enumE
;
}
}
return
null
;
}
}
\ No newline at end of file
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderItem.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
@Data
@Table
(
name
=
"order_item"
)
public
class
OrderItem
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@Id
@GeneratedValue
(
generator
=
"JDBC"
)
@ApiModelProperty
(
"主键"
)
private
Integer
id
;
/**
* 创建时间
*/
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Long
crtTime
;
/**
* 更新时间
*/
@Column
(
name
=
"upd_time"
)
@ApiModelProperty
(
value
=
"更新时间"
,
hidden
=
true
)
private
Long
updTime
;
/**
* 名称
*/
@Column
(
name
=
"name"
)
@ApiModelProperty
(
value
=
"名称"
)
private
String
name
;
/**
* item 类型 1--租车车型 2--车损免赔 3--司机费用 4--旅游项目 5--旅游保险 6--会员
*/
@Column
(
name
=
"type"
)
@ApiModelProperty
(
value
=
"item 类型 1--租车车型 2--车损免赔 3--司机费用 4--旅游项目 5--旅游保险 6--会员"
)
private
Integer
type
;
/**
* 原单价
*/
@Column
(
name
=
"meta_unit_price"
)
@ApiModelProperty
(
value
=
"原单价"
)
private
BigDecimal
metaUnitPrice
;
/**
* 单价
*/
@Column
(
name
=
"unit_price"
)
@ApiModelProperty
(
value
=
"单价"
)
private
BigDecimal
unitPrice
;
/**
* 总数 (购买数 + 赠送数)
*/
@Column
(
name
=
"total_num"
)
@ApiModelProperty
(
value
=
"总数 (购买数 + 赠送数)"
)
private
Integer
totalNum
;
/**
* 购买数量
*/
@Column
(
name
=
"buy_num"
)
@ApiModelProperty
(
value
=
"购买数量"
)
private
Integer
buyNum
;
/**
* 赠送的数量
*/
@Column
(
name
=
"award_num"
)
@ApiModelProperty
(
value
=
"赠送的数量"
)
private
Integer
awardNum
;
/**
* 扣减数量 (从购买数里面扣减的数量)
*/
@Column
(
name
=
"cut_num"
)
@ApiModelProperty
(
value
=
"扣减数量 (从购买数里面扣减的数量)"
)
private
Integer
cutNum
;
/**
* 商品id 有些为空如车损,免赔等
*/
@Column
(
name
=
"good_id"
)
@ApiModelProperty
(
value
=
"商品id 有些为空如车损,免赔等"
)
private
Integer
goodId
;
/**
* 优惠券等扣减的价格
*/
@Column
(
name
=
"coupon_amount"
)
@ApiModelProperty
(
value
=
"优惠券扣减的价格"
)
private
BigDecimal
couponAmount
;
/**
* 真实的总价
*/
@Column
(
name
=
"real_amount"
)
@ApiModelProperty
(
value
=
"真实的总价"
)
private
BigDecimal
realAmount
;
/**
* 订单id
*/
@Column
(
name
=
"order_id"
)
@ApiModelProperty
(
value
=
"订单id"
)
private
Integer
orderId
;
public
Integer
getCalculateNum
()
{
return
buyNum
-
cutNum
;
}
public
BigDecimal
getCalculateAmount
(
Boolean
isSetRealAmount
)
{
BigDecimal
calculateAmount
=
getUnitPrice
().
multiply
(
BigDecimal
.
valueOf
(
getCalculateNum
()));
if
(
isSetRealAmount
)
{
setRealAmount
(
calculateAmount
);
}
return
calculateAmount
;
}
public
BigDecimal
handleCouponAmount
(
BigDecimal
couponAmount
)
{
BigDecimal
realAmountResidue
=
getRealAmount
().
subtract
(
couponAmount
);
//剩余价格小于0 即优惠价格超出本item的实际价格,返回剩余优惠
if
(
BigDecimal
.
ZERO
.
compareTo
(
realAmountResidue
)
>
0
)
{
setCouponAmount
(
getRealAmount
());
setRealAmount
(
BigDecimal
.
ZERO
);
return
couponAmount
.
subtract
(
getCouponAmount
());
}
else
{
//剩余价格大于等于0 即优惠价格低于本item的实际价格,返回ZERO
setCouponAmount
(
couponAmount
);
setRealAmount
(
realAmountResidue
);
return
BigDecimal
.
ZERO
;
}
}
public
BigDecimal
getTotalAmount
()
{
return
realAmount
.
add
(
couponAmount
);
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderLog.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
java.io.Serializable
;
import
java.util.Date
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
*
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
@Data
@Table
(
name
=
"order_log"
)
public
class
OrderLog
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 日志id
*/
@Id
@GeneratedValue
(
generator
=
"JDBC"
)
@ApiModelProperty
(
"日志id"
)
private
Integer
id
;
/**
* 订单id
*/
@Column
(
name
=
"order_id"
)
@ApiModelProperty
(
value
=
"订单id"
)
private
Integer
orderId
;
/**
* 对应的订单状态
*/
@Column
(
name
=
"order_status"
)
@ApiModelProperty
(
value
=
"对应的订单状态"
)
private
Integer
orderStatus
;
/**
* 操作日志
*/
@Column
(
name
=
"log_content"
)
@ApiModelProperty
(
value
=
"操作日志"
)
private
String
logContent
;
/**
* 操作者id,另外 -1为系统
*/
@Column
(
name
=
"log_user_id"
)
@ApiModelProperty
(
value
=
"操作者id,另外 -1为系统"
)
private
Integer
logUserId
;
/**
* 操作者类型
*/
@Column
(
name
=
"log_user_type"
)
@ApiModelProperty
(
value
=
"操作者类型"
)
private
Integer
logUserType
;
/**
* 创建时间
*/
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
private
Long
crtTime
;
/**
* 日志类型 11--创建订单;12--创建订单;
*/
@Column
(
name
=
"type"
)
@ApiModelProperty
(
value
=
"日志类型 11--创建订单;12--创建订单;"
)
private
Integer
type
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/inter/OrderDetail.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
entity
.
inter
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderItem
;
public
interface
OrderDetail
{
import
java.util.List
;
public
Integer
getId
();
public
interface
OrderDetail
extends
OrderItemInter
{
public
void
setId
(
Integer
id
);
Integer
getId
();
void
setId
(
Integer
id
);
Integer
getOrderId
();
...
...
@@ -19,4 +23,9 @@ public interface OrderDetail {
Integer
getOrderOrigin
();
void
setOrderOrigin
(
Integer
orderOrigin
);
List
<
String
>
getTickerNo
();
void
setTickerNo
(
List
<
String
>
tickerNo
);
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/inter/OrderItemInter.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
entity
.
inter
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
java.util.List
;
public
interface
OrderItemInter
{
List
<
OrderItem
>
getItems
();
void
setItems
(
List
<
OrderItem
>
items
);
default
OrderItem
getItemByTypeEnum
(
ItemTypeEnum
itemTypeEnum
)
{
for
(
OrderItem
item:
getItems
())
{
if
(
itemTypeEnum
.
getCode
().
equals
(
item
.
getType
()))
{
return
item
;
}
}
return
null
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/mq/OrderMQDTO.java
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
pojo
.
mq
;
import
com.xxfc.platform.order.
entity.BaseOrder
;
import
com.xxfc.platform.order.entity.
OrderMemberDetail
;
import
com.xxfc.platform.order.entity.
OrderRentVehicle
Detail
;
import
com.xxfc.platform.order.entity.
OrderTourDetail
;
import
com.xxfc.platform.order.
contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.entity.
*
;
import
com.xxfc.platform.order.entity.
inter.Order
Detail
;
import
com.xxfc.platform.order.entity.
inter.OrderItemInter
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
OrderMQDTO
extends
BaseOrder
{
public
class
OrderMQDTO
extends
BaseOrder
implements
OrderItemInter
{
public
static
final
int
ORDER_CRT
=
1
;
public
static
final
int
ORDER_CANCEL
=
2
;
...
...
@@ -20,6 +22,17 @@ public class OrderMQDTO extends BaseOrder {
OrderMemberDetail
orderMemberDetail
;
List
<
OrderItem
>
items
;
public
OrderItem
getItemByTypeEnum
(
ItemTypeEnum
itemTypeEnum
)
{
for
(
OrderItem
item:
items
)
{
if
(
itemTypeEnum
.
getCode
().
equals
(
item
.
getType
()))
{
return
item
;
}
}
return
null
;
}
/**
* 标记是什么操作
* 0--删除"
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/order/MemberBO.java
View file @
2c16f023
...
...
@@ -5,6 +5,7 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.OrderMemberDetail
;
import
com.xxfc.platform.order.entity.OrderTourDetail
;
import
com.xxfc.platform.order.entity.inter.OrderDetail
;
...
...
@@ -27,4 +28,9 @@ public class MemberBO extends OrderMemberDetail implements OrderDetail {
* 优惠券*
*/
private
List
<
String
>
tickerNo
;
/**
* 订单子项
*/
List
<
OrderItem
>
items
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/order/OrderItemDTO.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
pojo
.
order
;
import
com.xxfc.platform.order.entity.OrderItem
;
public
class
OrderItemDTO
extends
OrderItem
{
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/order/RentVehicleBO.java
View file @
2c16f023
...
...
@@ -3,6 +3,7 @@ package com.xxfc.platform.order.pojo.order;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.inter.OrderDetail
;
import
com.xxfc.platform.order.entity.OrderRentVehicleDetail
;
import
com.xxfc.platform.vehicle.entity.VehicleModel
;
...
...
@@ -32,4 +33,9 @@ public class RentVehicleBO extends OrderRentVehicleDetail implements OrderDetail
* 优惠券*
*/
private
List
<
String
>
tickerNo
;
/**
* 订单子项
*/
List
<
OrderItem
>
items
;
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/order/TourBO.java
View file @
2c16f023
...
...
@@ -4,6 +4,7 @@ import com.github.wxiaoqi.security.admin.entity.User;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.order.entity.BaseOrder
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.OrderRentVehicleDetail
;
import
com.xxfc.platform.order.entity.OrderTourDetail
;
import
com.xxfc.platform.order.entity.inter.OrderDetail
;
...
...
@@ -29,4 +30,9 @@ public class TourBO extends OrderTourDetail implements OrderDetail {
* 优惠券*
*/
private
List
<
String
>
tickerNo
;
/**
* 订单子项
*/
List
<
OrderItem
>
items
;
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
View file @
2c16f023
...
...
@@ -42,10 +42,10 @@ import org.springframework.transaction.annotation.Transactional;
import
java.math.BigDecimal
;
import
java.util.*
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
config
.
rabbit
.
RabbitConstant
.*;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_FALSE
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_TRUE
;
import
static
com
.
xxfc
.
platform
.
universal
.
constant
.
DictionaryKey
.*;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
config
.
rabbit
.
RabbitConstant
.*;
/**
*
...
...
@@ -76,6 +76,9 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
@Autowired
OrderRefundBiz
orderRefundBiz
;
@Autowired
OrderItemBiz
orderItemBiz
;
@Autowired
VehicleFeign
vehicleFeign
;
...
...
@@ -514,6 +517,12 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
orderMQDTO
.
setOrderRentVehicleDetail
(
orvd
);
orderMQDTO
.
setOrderTourDetail
(
otd
);
orderMQDTO
.
setOrderMemberDetail
(
omd
);
//获取item
orderMQDTO
.
setItems
(
orderItemBiz
.
selectList
(
new
OrderItem
(){{
setOrderId
(
baseOrder
.
getId
());
}}));
sendQueue
(
orderMQDTO
,
sign
);
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderItemBiz.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
org.springframework.stereotype.Service
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.mapper.OrderItemMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
java.math.BigDecimal
;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
@Service
public
class
OrderItemBiz
extends
BaseBiz
<
OrderItemMapper
,
OrderItem
>
{
public
OrderItem
initOrderItem
(
BigDecimal
price
,
Integer
num
,
String
name
,
Integer
goodId
,
ItemTypeEnum
itemTypeEnum
){
return
new
OrderItem
(){{
setMetaUnitPrice
(
price
);
setUnitPrice
(
price
);
setBuyNum
(
num
);
setTotalNum
(
num
);
setAwardNum
(
0
);
setCutNum
(
0
);
setCouponAmount
(
BigDecimal
.
ZERO
);
setName
(
name
);
setGoodId
(
goodId
);
setType
(
itemTypeEnum
.
getCode
());
}};
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderLogBiz.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
biz
;
import
org.springframework.stereotype.Service
;
import
com.xxfc.platform.order.entity.OrderLog
;
import
com.xxfc.platform.order.mapper.OrderLogMapper
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
/**
*
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
@Service
public
class
OrderLogBiz
extends
BaseBiz
<
OrderLogMapper
,
OrderLog
>
{
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/OrderItemMapper.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
tk.mybatis.mapper.common.Mapper
;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
public
interface
OrderItemMapper
extends
Mapper
<
OrderItem
>
{
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/OrderLogMapper.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
mapper
;
import
com.xxfc.platform.order.entity.OrderLog
;
import
tk.mybatis.mapper.common.Mapper
;
/**
*
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-23 17:33:06
*/
public
interface
OrderLogMapper
extends
Mapper
<
OrderLog
>
{
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/OrderItemController.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
rest
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
(
"orderItem"
)
public
class
OrderItemController
extends
BaseController
<
OrderItemBiz
,
OrderItem
>
{
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/OrderLogController.java
0 → 100644
View file @
2c16f023
package
com
.
xxfc
.
platform
.
order
.
rest
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.xxfc.platform.order.biz.OrderLogBiz
;
import
com.xxfc.platform.order.entity.OrderLog
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
(
"orderLog"
)
public
class
OrderLogController
extends
BaseController
<
OrderLogBiz
,
OrderLog
>
{
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/OrderRentVehicleController.java
View file @
2c16f023
...
...
@@ -29,6 +29,7 @@ import springfox.documentation.annotations.ApiIgnore;
import
javax.persistence.Column
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Controller
@RequestMapping
(
"orderRentVehicle"
)
...
...
@@ -58,7 +59,8 @@ public class OrderRentVehicleController extends CommonBaseController {
setBookEndDate
(
vo
.
getBookEndDate
());
}});
bo
.
setAppUserDTO
(
userFeign
.
userDetailByToken
(
BaseContextHandler
.
getToken
()).
getData
());
bo
.
setTickerNo
(
StrUtil
.
isNotBlank
(
vo
.
getTickerNos
())?
Arrays
.
asList
(
vo
.
getTickerNos
().
split
(
","
)):
null
);
bo
.
setTickerNo
(
StrUtil
.
isNotBlank
(
vo
.
getTickerNos
())?
StrUtil
.
splitTrim
(
vo
.
getTickerNos
(),
","
):
null
);
orderRentVehicleService
.
createOrder
(
bo
);
return
ObjectRestResponse
.
succ
(
bo
.
getOrder
());
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/AbstractOrderHandle.java
View file @
2c16f023
...
...
@@ -6,7 +6,9 @@ import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.util.OrderUtil
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.BaseOrderBiz
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.contant.enumerate.OrderStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.BaseOrder
;
...
...
@@ -19,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
import
java.math.BigDecimal
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
@Transactional
public
abstract
class
AbstractOrderHandle
<
Biz
extends
BaseBiz
,
Detail
extends
OrderDetail
>{
...
...
@@ -36,6 +39,12 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
@Autowired
protected
BaseOrderBiz
baseOrderBiz
;
@Autowired
protected
OrderItemBiz
orderItemBiz
;
@Autowired
ActivityFeign
activityFeign
;
protected
OrderTypeEnum
orderTypeEnum
;
protected
Integer
channel
;
...
...
@@ -101,6 +110,14 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
if
(
updateResult
>
0
)
{
detail
.
getOrder
().
setVersion
(
detail
.
getOrder
().
getVersion
()
+
1
);
}
//插入item
if
(
null
!=
detail
.
getItems
()
&&
detail
.
getItems
().
size
()
>
0
)
{
orderItemBiz
.
insertMultiSelective
(
detail
.
getItems
().
stream
().
map
(
v
->
{
v
.
setOrderId
(
detail
.
getOrderId
());
return
v
;
}).
collect
(
Collectors
.
toList
()));
}
}
/**
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderMemberService.java
View file @
2c16f023
...
...
@@ -5,13 +5,17 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.auth.client.config.UserAuthConfig
;
import
com.github.wxiaoqi.security.common.context.BaseContextHandler
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderMemberDetailBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.pojo.order.MemberBO
;
import
com.xxfc.platform.order.pojo.price.OrderPriceVO
;
import
com.xxfc.platform.tour.feign.TourFeign
;
...
...
@@ -27,7 +31,9 @@ import javax.servlet.http.HttpServletRequest;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.stream.Collectors
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_TRUE
;
import
static
com
.
xxfc
.
platform
.
universal
.
constant
.
DictionaryKey
.
APP_ORDER
;
@Service
...
...
@@ -61,6 +67,9 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
@Autowired
UserFeign
userFeign
;
@Autowired
ActivityFeign
activityFeign
;
@Autowired
public
HttpServletRequest
request
;
...
...
@@ -102,6 +111,14 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
//设置订单名称
bo
.
getOrder
().
setName
(
bo
.
getBaseUserMemberLevel
().
getName
());
OrderItem
memberItem
=
bo
.
getItemByTypeEnum
(
ItemTypeEnum
.
MEMBER
);
BigDecimal
amount
=
memberItem
.
getTotalAmount
();
//如果有使用优惠券,则扣减
if
(
BigDecimal
.
ZERO
.
compareTo
(
bo
.
getOrder
().
getCouponAmount
())
<
0
)
{
activityFeign
.
use
(
bo
.
getOrder
().
getUserId
(),
bo
.
getTickerNo
(),
bo
.
getOrder
().
getNo
(),
channel
,
amount
,
ActivityFeign
.
TYPE_USE
);
}
super
.
handleDetail
(
bo
);
//发送定时取消订单(30分钟)
...
...
@@ -120,13 +137,28 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
BigDecimal
orderAmount
=
BigDecimal
.
ZERO
;
BigDecimal
goodsAmount
=
BigDecimal
.
ZERO
;
BigDecimal
realAmount
=
BigDecimal
.
ZERO
;
BigDecimal
couponAmount
=
BigDecimal
.
ZERO
;
//设置Item
OrderItem
vehicleOrderItem
=
orderItemBiz
.
initOrderItem
(
detail
.
getBaseUserMemberLevel
().
getPrice
(),
1
,
detail
.
getBaseUserMemberLevel
().
getName
(),
detail
.
getBaseUserMemberLevel
().
getId
(),
ItemTypeEnum
.
MEMBER
);
//商品价格
goodsAmount
=
goodsAmount
.
add
(
detail
.
getBaseUserMemberLevel
().
getPrice
());
goodsAmount
=
goodsAmount
.
add
(
vehicleOrderItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
//vehicleAmount 优惠券处理
if
(
null
!=
detail
.
getTickerNo
()
&&
detail
.
getTickerNo
().
size
()
>
0
)
{
couponAmount
=
activityFeign
.
use
(
detail
.
getOrder
().
getUserId
(),
detail
.
getTickerNo
(),
detail
.
getOrder
().
getNo
(),
channel
,
goodsAmount
,
ActivityFeign
.
TYPE_NO_USE
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
detail
.
getOrder
().
setCouponTickerNos
(
detail
.
getTickerNo
().
stream
().
collect
(
Collectors
.
joining
(
","
)));
detail
.
getOrder
().
setHasDiscount
(
SYS_TRUE
);
vehicleOrderItem
.
handleCouponAmount
(
couponAmount
);
}
}
//订单总价格
orderAmount
=
orderAmount
.
add
(
goodsAmount
);
//真实价格
realAmount
=
realAmount
.
add
(
orderAmount
);
realAmount
=
realAmount
.
add
(
orderAmount
)
.
subtract
(
couponAmount
)
;
//生成订单明细
OrderPriceVO
opv
=
new
OrderPriceVO
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderRentVehicleService.java
View file @
2c16f023
...
...
@@ -14,11 +14,14 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.biz.OrderRentVehicleBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderCostEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.OrderTemplate
;
import
com.xxfc.platform.order.pojo.order.RentVehicleBO
;
import
com.xxfc.platform.order.pojo.price.RentVehiclePriceVO
;
...
...
@@ -36,6 +39,7 @@ import org.springframework.stereotype.Service;
import
javax.annotation.PostConstruct
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.List
;
...
...
@@ -140,9 +144,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
}
}
OrderItem
vehicleModelItem
=
bo
.
getItemByTypeEnum
(
ItemTypeEnum
.
VEHICLE_MODEL
);
BigDecimal
amount
=
vehicleModelItem
.
getTotalAmount
();
//如果有使用优惠券,则扣减
if
(
BigDecimal
.
ZERO
.
compareTo
(
bo
.
getOrder
().
getCouponAmount
())
<
0
)
{
activityFeign
.
use
(
bo
.
getAppUserDTO
().
getUserid
(),
bo
.
getTickerNo
(),
bo
.
getOrder
().
getNo
(),
channel
,
bo
.
getOrder
().
getGoodsAmount
()
,
ActivityFeign
.
TYPE_USE
);
activityFeign
.
use
(
bo
.
getAppUserDTO
().
getUserid
(),
bo
.
getTickerNo
(),
bo
.
getOrder
().
getNo
(),
channel
,
amount
,
ActivityFeign
.
TYPE_USE
);
}
//获取可用车辆
...
...
@@ -177,6 +184,17 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//当前用户
AppUserDTO
dto
=
detail
.
getAppUserDTO
();
//车型信息
VehicleModel
vehicleModel
=
vehicleFeign
.
get
(
detail
.
getModelId
()).
getData
();
//设置Item
OrderItem
vehicleOrderItem
=
orderItemBiz
.
initOrderItem
(
vehicleModel
.
getPrice
(),
detail
.
getDayNum
(),
vehicleModel
.
getName
(),
vehicleModel
.
getId
(),
ItemTypeEnum
.
VEHICLE_MODEL
);
OrderItem
driverOrderItem
=
orderItemBiz
.
initOrderItem
(
DRIVER_PRICE
,
detail
.
getDayNum
(),
"平台司机"
,
null
,
ItemTypeEnum
.
DRIVER
);
OrderItem
damageSafeOrderItem
=
orderItemBiz
.
initOrderItem
(
DAMAGE_SAFE
,
detail
.
getDayNum
(),
"免赔费用"
,
null
,
ItemTypeEnum
.
DAMAGE_SAFE
);
detail
.
setItems
(
new
ArrayList
<
OrderItem
>());
detail
.
getItems
().
add
(
vehicleOrderItem
);
//如果用户存在,并且为会员,并且车辆有优惠价
if
(
null
!=
dto
&&
null
!=
detail
.
getRentFreeDay
()
&&
detail
.
getRentFreeDay
()
>
0
)
{
if
(
null
==
dto
.
getRentFreeDays
()
||
dto
.
getRentFreeDays
()
<=
0
)
{
...
...
@@ -189,6 +207,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
}
else
{
freeDayNum
=
detail
.
getDayNum
();
}
vehicleOrderItem
.
setCutNum
(
freeDayNum
);
vehicleDayNum
=
detail
.
getDayNum
()
-
freeDayNum
;
detail
.
getOrder
().
setHasMemberRight
(
SYS_TRUE
);
}
else
{
...
...
@@ -199,7 +218,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//计算价格
//计算车辆费用
VehicleModel
vehicleModel
=
vehicleFeign
.
get
(
detail
.
getModelId
()).
getData
();
//如果用户存在,并且为会员,并且车辆有优惠价
if
(
null
!=
dto
&&
SYS_TRUE
.
equals
(
dto
.
getIsMember
())
&&
!
NONE
.
getCode
().
equals
(
dto
.
getMemberLevel
())
&&
!
DISCOUNT_STATUS_NONE
.
equals
(
vehicleModel
.
getRentDiscountStatus
()))
{
...
...
@@ -220,35 +238,41 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
detail
.
getOrder
().
setHasMemberRight
(
SYS_TRUE
);
break
;
}
vehicleOrderItem
.
setUnitPrice
(
modelAmount
);
}
else
{
modelAmount
=
vehicleModel
.
getPrice
();
}
vehicleAmount
=
vehicleAmount
.
add
(
modelAmount
.
multiply
(
BigDecimal
.
valueOf
(
vehicleDayNum
)));
//如果有使用会员权益或者优惠券,则设置订单已优惠
if
(
SYS_TRUE
.
equals
(
detail
.
getOrder
().
getHasMemberRight
()))
{
detail
.
getOrder
().
setHasDiscount
(
SYS_TRUE
);
}
//单价 * (购买天数 - 减免天数)
vehicleAmount
=
vehicleAmount
.
add
(
vehicleOrderItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
if
(
DRIVER_TYPE_COMPANY
.
equals
(
detail
.
getDriverType
()))
{
//计算司机费用
driverAmount
=
driverAmount
.
add
(
DRIVER_PRICE
.
multiply
(
BigDecimal
.
valueOf
(
detail
.
getDayNum
())));
driverAmount
=
driverAmount
.
add
(
driverOrderItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
detail
.
getItems
().
add
(
driverOrderItem
);
}
if
(
DRIVER_TYPE_DAMAGE_SAFE
.
equals
(
detail
.
getDamageSafe
()))
{
//免赔费用
damageSafeAmount
=
damageSafeAmount
.
add
(
DAMAGE_SAFE
.
multiply
(
BigDecimal
.
valueOf
(
detail
.
getDayNum
())));
damageSafeAmount
=
damageSafeAmount
.
add
(
damageSafeOrderItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
detail
.
getItems
().
add
(
damageSafeOrderItem
);
}
//商品价格
goodsAmount
=
goodsAmount
.
add
(
vehicleAmount
).
add
(
driverAmount
).
add
(
damageSafeAmount
);
//优惠券处理
//待完成
//vehicleAmount 优惠券处理
if
(
null
!=
detail
.
getTickerNo
()
&&
detail
.
getTickerNo
().
size
()
>
0
)
{
couponAmount
=
activityFeign
.
use
(
dto
.
getUserid
(),
detail
.
getTickerNo
(),
detail
.
getOrder
().
getNo
(),
channel
,
goods
Amount
,
ActivityFeign
.
TYPE_NO_USE
);
couponAmount
=
activityFeign
.
use
(
dto
.
getUserid
(),
detail
.
getTickerNo
(),
detail
.
getOrder
().
getNo
(),
channel
,
vehicle
Amount
,
ActivityFeign
.
TYPE_NO_USE
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
detail
.
getOrder
().
setCouponTickerNos
(
detail
.
getTickerNo
().
stream
().
collect
(
Collectors
.
joining
(
","
)));
detail
.
getOrder
().
setHasDiscount
(
SYS_TRUE
);
vehicleOrderItem
.
handleCouponAmount
(
couponAmount
);
}
}
...
...
@@ -257,15 +281,14 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
realAmount
=
orderAmount
.
subtract
(
couponAmount
);
//生成订单明细
RentVehiclePriceVO
rvp
=
new
RentVehiclePriceVO
(){{
setDeposit
(
vehicleModel
.
getDeposit
());
setDriverPrice
(
DRIVER_PRICE
);
setDamageSafePrice
(
DAMAGE_SAFE
);
setModelName
(
vehicleModel
.
getName
());
setDayNum
(
detail
.
getDayNum
());
setVehicleNum
(
1
);
setDriverNum
(
1
);
}};
RentVehiclePriceVO
rvp
=
new
RentVehiclePriceVO
();
rvp
.
setDeposit
(
vehicleModel
.
getDeposit
());
rvp
.
setDriverPrice
(
DRIVER_PRICE
);
rvp
.
setDamageSafePrice
(
DAMAGE_SAFE
);
rvp
.
setModelName
(
vehicleModel
.
getName
());
rvp
.
setDayNum
(
detail
.
getDayNum
());
rvp
.
setVehicleNum
(
1
);
rvp
.
setDriverNum
(
1
);
rvp
.
setCouponAmount
(
couponAmount
);
rvp
.
setOrderAmount
(
orderAmount
);
rvp
.
setGoodsAmount
(
goodsAmount
);
...
...
@@ -311,6 +334,9 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
if
(
DRIVER_TYPE_DAMAGE_SAFE
.
equals
(
detail
.
getDamageSafe
()))
{
childrenStr
.
append
(
",${tem_0104}"
);
}
if
(
StrUtil
.
isNotBlank
(
detail
.
getOrder
().
getCouponTickerNos
()))
{
childrenStr
.
append
(
",${tem_9901}"
);
}
if
(
childrenStr
.
length
()
>
0
){
childrenStr
.
deleteCharAt
(
0
);
}
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/service/OrderTourService.java
View file @
2c16f023
...
...
@@ -12,11 +12,14 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.order.biz.OrderCostDetailBiz
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.biz.OrderTemplateBiz
;
import
com.xxfc.platform.order.biz.OrderTourDetailBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderCostEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.entity.OrderItem
;
import
com.xxfc.platform.order.entity.OrderTemplate
;
import
com.xxfc.platform.order.pojo.order.TourBO
;
import
com.xxfc.platform.order.pojo.price.TourPriceVO
;
...
...
@@ -138,9 +141,13 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
//扣減庫存
tourFeign
.
stock
(
bo
.
getSpePriceId
(),
bo
.
getTotalNumber
(),
TourFeign
.
STOCK_SUBTRACT
);
OrderItem
tourAdultItem
=
bo
.
getItemByTypeEnum
(
ItemTypeEnum
.
TOUR_ADULT
);
OrderItem
tourChildItem
=
bo
.
getItemByTypeEnum
(
ItemTypeEnum
.
TOUR_CHILD
);
BigDecimal
amount
=
tourAdultItem
.
getTotalAmount
().
add
(
tourChildItem
.
getTotalAmount
());
//如果有使用优惠券,则扣减
if
(
BigDecimal
.
ZERO
.
compareTo
(
bo
.
getOrder
().
getCouponAmount
())
<
0
)
{
activityFeign
.
use
(
bo
.
getAppUserDTO
().
getUserid
(),
bo
.
getTickerNo
(),
bo
.
getOrder
().
getNo
(),
channel
,
bo
.
getOrder
().
getGoodsAmount
()
,
ActivityFeign
.
TYPE_USE
);
activityFeign
.
use
(
bo
.
getAppUserDTO
().
getUserid
(),
bo
.
getTickerNo
(),
bo
.
getOrder
().
getNo
(),
channel
,
amount
,
ActivityFeign
.
TYPE_USE
);
}
super
.
handleDetail
(
bo
);
...
...
@@ -203,33 +210,47 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
}});
TourSpePriceVo
tourSpePriceVo
=
objectRestResponse
.
getData
();
//设置Item
OrderItem
tourAdultItem
=
orderItemBiz
.
initOrderItem
(
tourSpePriceVo
.
getOriginalPrice
(),
detail
.
getAdultNum
(),
"成人"
,
detail
.
getSpePriceId
(),
ItemTypeEnum
.
TOUR_ADULT
);
tourAdultItem
.
setUnitPrice
(
tourSpePriceVo
.
getPrice
());
OrderItem
tourChildItem
=
orderItemBiz
.
initOrderItem
(
tourSpePriceVo
.
getChildOriginalPrice
(),
detail
.
getChildNum
(),
"儿童"
,
detail
.
getSpePriceId
(),
ItemTypeEnum
.
TOUR_CHILD
);
tourChildItem
.
setUnitPrice
(
tourSpePriceVo
.
getChildPrice
());
//人数 * 天数
OrderItem
insureItem
=
orderItemBiz
.
initOrderItem
(
INSURE_PRICE
,
detail
.
getTotalNumber
()
*
detail
.
getTourGood
().
getNumber
(),
"旅游保险"
,
null
,
ItemTypeEnum
.
TOUR_INSURE
);
//需要保险
if
(
SYS_TRUE
.
equals
(
detail
.
getHasInsure
()))
{
//人数 * 天数 * 价格
insureAmount
=
insureAmount
.
add
(
INSURE_PRICE
.
multiply
(
new
BigDecimal
(
String
.
valueOf
(
detail
.
getTotalNumber
()
*
detail
.
getTourGood
().
getNumber
()))
));
insureAmount
=
insureAmount
.
add
(
insureItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
}
//总价
tourAmount
=
tourAmount
.
add
(
tour
SpePriceVo
.
getTotalPrice
()).
add
(
tourSpePriceVo
.
getTotalChildPrice
(
));
tourAmount
=
tourAmount
.
add
(
tour
AdultItem
.
getCalculateAmount
(
Boolean
.
TRUE
)).
add
(
tourChildItem
.
getCalculateAmount
(
Boolean
.
TRUE
));
//商品价格
goodsAmount
=
goodsAmount
.
add
(
tourAmount
);
goodsAmount
=
goodsAmount
.
add
(
tourAmount
)
.
add
(
insureAmount
)
;
//优惠券处理
//待完成
if
(
null
!=
detail
.
getTickerNo
()
&&
detail
.
getTickerNo
().
size
()
>
0
)
{
couponAmount
=
activityFeign
.
use
(
dto
.
getUserid
(),
detail
.
getTickerNo
(),
detail
.
getOrder
().
getNo
(),
channel
,
goods
Amount
,
ActivityFeign
.
TYPE_NO_USE
);
couponAmount
=
activityFeign
.
use
(
dto
.
getUserid
(),
detail
.
getTickerNo
(),
detail
.
getOrder
().
getNo
(),
channel
,
tour
Amount
,
ActivityFeign
.
TYPE_NO_USE
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
detail
.
getOrder
().
setCouponTickerNos
(
detail
.
getTickerNo
()
.
stream
().
collect
(
Collectors
.
joining
(
","
)));
detail
.
getOrder
().
setHasDiscount
(
SYS_TRUE
);
BigDecimal
residueCouponAmount
=
tourAdultItem
.
handleCouponAmount
(
couponAmount
);
if
(
residueCouponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
tourChildItem
.
handleCouponAmount
(
residueCouponAmount
);
}
}
}
//总价格
orderAmount
=
orderAmount
.
add
(
goodsAmount
)
.
add
(
insureAmount
)
;
orderAmount
=
orderAmount
.
add
(
goodsAmount
);
//真实价格
realAmount
=
realAmount
.
add
(
tourSpePriceVo
.
getRealPrice
()).
add
(
tourSpePriceVo
.
getRealChildPrice
()).
add
(
insure
Amount
).
subtract
(
couponAmount
);
realAmount
=
realAmount
.
add
(
order
Amount
).
subtract
(
couponAmount
);
//生成订单明细
TourPriceVO
tpv
=
BeanUtil
.
toBean
(
tourSpePriceVo
,
TourPriceVO
.
class
);
...
...
@@ -260,7 +281,9 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
if
(
SYS_TRUE
.
equals
(
detail
.
getHasInsure
()))
{
childrenStr
.
append
(
",${tem_0203}"
);
}
if
(
StrUtil
.
isNotBlank
(
detail
.
getOrder
().
getCouponTickerNos
()))
{
childrenStr
.
append
(
",${tem_9901}"
);
}
if
(
childrenStr
.
length
()
>
0
){
childrenStr
.
deleteCharAt
(
0
);
}
...
...
xx-order/xx-order-server/src/main/resources/mapper/OrderItemMapper.xml
0 → 100644
View file @
2c16f023
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.xxfc.platform.order.mapper.OrderItemMapper"
>
<!-- 可根据自己的需求,是否要使用 -->
<resultMap
type=
"com.xxfc.platform.order.entity.OrderItem"
id=
"orderItemMap"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"crtTime"
column=
"crt_time"
/>
<result
property=
"updTime"
column=
"upd_time"
/>
<result
property=
"name"
column=
"name"
/>
<result
property=
"type"
column=
"type"
/>
<result
property=
"metaUnitPrice"
column=
"meta_unit_price"
/>
<result
property=
"unitPrice"
column=
"unit_price"
/>
<result
property=
"totalNum"
column=
"total_num"
/>
<result
property=
"buyNum"
column=
"buy_num"
/>
<result
property=
"awardNum"
column=
"award_num"
/>
<result
property=
"cutNum"
column=
"cut_num"
/>
<result
property=
"goodid"
column=
"goodId"
/>
<result
property=
"cutAmount"
column=
"cut_amount"
/>
<result
property=
"realAmount"
column=
"real_amount"
/>
</resultMap>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/OrderLogMapper.xml
0 → 100644
View file @
2c16f023
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.xxfc.platform.order.mapper.OrderLogMapper"
>
<!-- 可根据自己的需求,是否要使用 -->
<resultMap
type=
"com.xxfc.platform.order.entity.OrderLog"
id=
"orderLogMap"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"orderId"
column=
"order_id"
/>
<result
property=
"orderStatus"
column=
"order_status"
/>
<result
property=
"logContent"
column=
"log_content"
/>
<result
property=
"logUserId"
column=
"log_user_id"
/>
<result
property=
"logUserType"
column=
"log_user_type"
/>
<result
property=
"crtTime"
column=
"crt_time"
/>
<result
property=
"type"
column=
"type"
/>
</resultMap>
</mapper>
\ No newline at end of file
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleMapper.xml
View file @
2c16f023
...
...
@@ -227,12 +227,12 @@
</foreach>
</trim>
)
<!-- or v.subordinate_branch in (-->
<!-- <trim suffixOverrides=",">-->
<!-- <foreach collection="companyList" item="companyId">-->
<!-- #{companyId},-->
<!-- </foreach>-->
<!-- </trim>-->
<!-- or v.subordinate_branch in (-->
<!-- <trim suffixOverrides=",">-->
<!-- <foreach collection="companyList" item="companyId">-->
<!-- #{companyId},-->
<!-- </foreach>-->
<!-- </trim>-->
)
</if>
<if
test=
"mRangeDateEnd !=null"
>
...
...
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