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
f5c290d6
Commit
f5c290d6
authored
Sep 09, 2019
by
libin
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
3147f516
09ebe880
Changes
50
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
50 changed files
with
1525 additions
and
280 deletions
+1525
-280
.gitignore
.gitignore
+5
-1
RandomUtil.java
...a/com/github/wxiaoqi/security/common/util/RandomUtil.java
+1
-1
PageParam.java
...java/com/github/wxiaoqi/security/common/vo/PageParam.java
+2
-0
Menu.java
...n/java/com/github/wxiaoqi/security/admin/entity/Menu.java
+16
-0
UserController.java
...om/github/wxiaoqi/security/admin/rest/UserController.java
+5
-2
PermissionService.java
...wxiaoqi/security/admin/rpc/service/PermissionService.java
+2
-1
MenuMapper.xml
...odules/ace-admin/src/main/resources/mapper/MenuMapper.xml
+1
-0
ActivityFeign.java
.../java/com/xxfc/platform/activity/feign/ActivityFeign.java
+2
-0
UserCouponBiz.java
...in/java/com/xxfc/platform/activity/biz/UserCouponBiz.java
+4
-2
OrderViolateEnum.java
...fc/platform/order/contant/enumerate/OrderViolateEnum.java
+62
-0
BaseOrder.java
...c/main/java/com/xxfc/platform/order/entity/BaseOrder.java
+30
-0
OrderRentVehicleDetail.java
...om/xxfc/platform/order/entity/OrderRentVehicleDetail.java
+7
-0
OrderVehicleCrosstown.java
...com/xxfc/platform/order/entity/OrderVehicleCrosstown.java
+7
-0
InProgressVO.java
.../com/xxfc/platform/order/pojo/calculate/InProgressVO.java
+35
-0
OrderVehicleCrosstownBiz.java
...com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
+119
-65
OrderCalculateBiz.java
.../com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
+118
-0
OrderCancelBiz.java
...ava/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
+37
-14
DailyTravelOrderStatisticsMapper.java
...atform/order/mapper/DailyTravelOrderStatisticsMapper.java
+1
-1
DailyVehicleOrderStatisticsMapper.java
...tform/order/mapper/DailyVehicleOrderStatisticsMapper.java
+1
-1
OrderStatisticsController.java
...form/order/rest/background/OrderStatisticsController.java
+9
-0
DailyMembersOrderStatisticsMapper.xml
...in/resources/mapper/DailyMembersOrderStatisticsMapper.xml
+27
-23
DailyTravelOrderStatisticsMapper.xml
...ain/resources/mapper/DailyTravelOrderStatisticsMapper.xml
+27
-24
DailyVehicleOrderStatisticsMapper.xml
...in/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
+35
-32
ModelDto.java
...pi/src/main/java/com/xxfc/platform/uccn/dto/ModelDto.java
+19
-0
SeoDTO.java
...-api/src/main/java/com/xxfc/platform/uccn/dto/SeoDTO.java
+21
-0
Model.java
...pi/src/main/java/com/xxfc/platform/uccn/entity/Model.java
+61
-0
SEO.java
...-api/src/main/java/com/xxfc/platform/uccn/entity/SEO.java
+57
-0
ModelQuery.java
...i/src/main/java/com/xxfc/platform/uccn/vo/ModelQuery.java
+12
-0
ModelVo.java
...-api/src/main/java/com/xxfc/platform/uccn/vo/ModelVo.java
+12
-0
SEOQuery.java
...api/src/main/java/com/xxfc/platform/uccn/vo/SEOQuery.java
+12
-0
SEOVo.java
...cn-api/src/main/java/com/xxfc/platform/uccn/vo/SEOVo.java
+9
-0
ModelBackgroundBiz.java
...n/java/com/xxfc/platform/uccn/biz/ModelBackgroundBiz.java
+117
-0
SEOBiz.java
...rver/src/main/java/com/xxfc/platform/uccn/biz/SEOBiz.java
+72
-0
ModelBackgroundMapper.java
.../com/xxfc/platform/uccn/mapper/ModelBackgroundMapper.java
+7
-0
SEOMapper.java
...rc/main/java/com/xxfc/platform/uccn/mapper/SEOMapper.java
+11
-0
SEOController.java
.../main/java/com/xxfc/platform/uccn/rest/SEOController.java
+31
-0
ModelBackgroundController.java
...c/platform/uccn/rest/admin/ModelBackgroundController.java
+33
-0
SEOBackgroundController.java
...xfc/platform/uccn/rest/admin/SEOBackgroundController.java
+38
-0
SEOMapper.xml
...cn/xx-uccn-server/src/main/resources/mapper/SEOMapper.xml
+28
-0
pom.xml
xx-universal/xx-universal-api/pom.xml
+11
-0
JPushBiz.java
...c/main/java/com/xxfc/platform/universal/biz/JPushBiz.java
+52
-0
JPushController.java
...m/xxfc/platform/universal/controller/JPushController.java
+31
-0
VehicleUserReserve.java
.../com/xxfc/platform/vehicle/entity/VehicleUserReserve.java
+85
-0
VehicleUserReserveDTO.java
...xxfc/platform/vehicle/pojo/dto/VehicleUserReserveDTO.java
+18
-0
VehicleUserReserveVo.java
...m/xxfc/platform/vehicle/pojo/vo/VehicleUserReserveVo.java
+19
-0
VehicleActiveService.java
...a/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
+76
-113
VehicleUserReserveBiz.java
.../com/xxfc/platform/vehicle/biz/VehicleUserReserveBiz.java
+51
-0
VehicleUserReserveMapper.java
...xfc/platform/vehicle/mapper/VehicleUserReserveMapper.java
+18
-0
VehicleUserReserveController.java
...c/platform/vehicle/rest/VehicleUserReserveController.java
+39
-0
VehicleUserReserveMapper.xml
...er/src/main/resources/mapper/VehicleUserReserveMapper.xml
+32
-0
No files found.
.gitignore
View file @
f5c290d6
...
@@ -7,6 +7,10 @@ target/
...
@@ -7,6 +7,10 @@ target/
.settings/
.settings/
.classpath
.classpath
ace-modules/ace-tool/src/main/resources/application-dev.yml
ace-modules/ace-tool/src/main/resources/application-dev.yml
**/logs
**/src/test
**/src/test
**/logs
xx-order/xx-order-server/logs/**
*.log
logs/**
/src/main/test/**
ace-common/src/main/java/com/github/wxiaoqi/security/common/util/RandomUtil.java
View file @
f5c290d6
...
@@ -63,7 +63,7 @@ public class RandomUtil
...
@@ -63,7 +63,7 @@ public class RandomUtil
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
int
max
=
20
;
int
max
=
20
;
int
n
=
2
0
;
int
n
=
3
0
;
Set
<
Integer
>
set
=
new
HashSet
<>();
Set
<
Integer
>
set
=
new
HashSet
<>();
randomSet
(
max
,
n
,
set
,
n
);
randomSet
(
max
,
n
,
set
,
n
);
for
(
Integer
a
:
set
)
{
for
(
Integer
a
:
set
)
{
...
...
ace-common/src/main/java/com/github/wxiaoqi/security/common/vo/PageParam.java
View file @
f5c290d6
...
@@ -9,4 +9,6 @@ public class PageParam {
...
@@ -9,4 +9,6 @@ public class PageParam {
Integer
page
;
Integer
page
;
@ApiModelProperty
(
"每页限制"
)
@ApiModelProperty
(
"每页限制"
)
Integer
limit
;
Integer
limit
;
}
}
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/entity/Menu.java
View file @
f5c290d6
...
@@ -25,6 +25,8 @@ public class Menu {
...
@@ -25,6 +25,8 @@ public class Menu {
private
String
type
;
private
String
type
;
private
String
state
;
private
String
description
;
private
String
description
;
@Column
(
name
=
"crt_time"
)
@Column
(
name
=
"crt_time"
)
...
@@ -167,6 +169,20 @@ public class Menu {
...
@@ -167,6 +169,20 @@ public class Menu {
this
.
type
=
type
;
this
.
type
=
type
;
}
}
/**
* @return state
*/
public
String
getState
()
{
return
state
;
}
/**
* @param state
*/
public
void
setState
(
String
state
)
{
this
.
state
=
state
;
}
/**
/**
* @return description
* @return description
*/
*/
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/UserController.java
View file @
f5c290d6
...
@@ -120,8 +120,11 @@ public class UserController extends CommonBaseController {
...
@@ -120,8 +120,11 @@ public class UserController extends CommonBaseController {
@RequestMapping
(
value
=
"/front/menus"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"/front/menus"
,
method
=
RequestMethod
.
GET
)
public
@ResponseBody
public
@ResponseBody
List
<
MenuTree
>
getMenusByUsername
(
String
token
)
throws
Exception
{
List
<
MenuTree
>
getMenusByUsername
(
String
token
,
String
state
)
throws
Exception
{
return
permissionService
.
getMenusByUsername
(
token
);
if
(
StringUtils
.
isBlank
(
state
)){
state
=
"0,1"
;
}
return
permissionService
.
getMenusByUsername
(
token
,
state
);
}
}
@RequestMapping
(
value
=
"/front/menu/all"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"/front/menu/all"
,
method
=
RequestMethod
.
GET
)
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rpc/service/PermissionService.java
View file @
f5c290d6
...
@@ -170,13 +170,14 @@ public class PermissionService {
...
@@ -170,13 +170,14 @@ public class PermissionService {
return
frontUser
;
return
frontUser
;
}
}
public
List
<
MenuTree
>
getMenusByUsername
(
String
token
)
throws
Exception
{
public
List
<
MenuTree
>
getMenusByUsername
(
String
token
,
String
state
)
throws
Exception
{
String
username
=
userAuthUtil
.
getInfoFromToken
(
token
).
getUniqueName
();
String
username
=
userAuthUtil
.
getInfoFromToken
(
token
).
getUniqueName
();
if
(
username
==
null
)
{
if
(
username
==
null
)
{
return
null
;
return
null
;
}
}
User
user
=
userBiz
.
getUserByUsername
(
username
);
User
user
=
userBiz
.
getUserByUsername
(
username
);
List
<
Menu
>
menus
=
menuBiz
.
getUserAuthorityMenuByUserId
(
user
.
getId
());
List
<
Menu
>
menus
=
menuBiz
.
getUserAuthorityMenuByUserId
(
user
.
getId
());
menus
=
menus
.
stream
().
filter
(
a
->
state
.
contains
(
a
.
getState
()==
null
?
"1"
:
a
.
getState
())).
collect
(
Collectors
.
toList
());
return
getMenuTree
(
menus
,
AdminCommonConstant
.
ROOT
);
return
getMenuTree
(
menus
,
AdminCommonConstant
.
ROOT
);
}
}
}
}
ace-modules/ace-admin/src/main/resources/mapper/MenuMapper.xml
View file @
f5c290d6
...
@@ -12,6 +12,7 @@
...
@@ -12,6 +12,7 @@
<result
column=
"href"
jdbcType=
"VARCHAR"
property=
"href"
/>
<result
column=
"href"
jdbcType=
"VARCHAR"
property=
"href"
/>
<result
column=
"icon"
jdbcType=
"VARCHAR"
property=
"icon"
/>
<result
column=
"icon"
jdbcType=
"VARCHAR"
property=
"icon"
/>
<result
column=
"type"
jdbcType=
"CHAR"
property=
"type"
/>
<result
column=
"type"
jdbcType=
"CHAR"
property=
"type"
/>
<result
column=
"state"
jdbcType=
"INTEGER"
property=
"state"
/>
<result
column=
"description"
jdbcType=
"VARCHAR"
property=
"description"
/>
<result
column=
"description"
jdbcType=
"VARCHAR"
property=
"description"
/>
<result
column=
"crt_time"
jdbcType=
"DATE"
property=
"crtTime"
/>
<result
column=
"crt_time"
jdbcType=
"DATE"
property=
"crtTime"
/>
<result
column=
"crt_user"
jdbcType=
"VARCHAR"
property=
"crtUser"
/>
<result
column=
"crt_user"
jdbcType=
"VARCHAR"
property=
"crtUser"
/>
...
...
xx-activity/xx-activity-api/src/main/java/com/xxfc/platform/activity/feign/ActivityFeign.java
View file @
f5c290d6
...
@@ -24,6 +24,8 @@ import java.util.List;
...
@@ -24,6 +24,8 @@ import java.util.List;
@FeignClient
(
value
=
"xx-activity"
)
@FeignClient
(
value
=
"xx-activity"
)
public
interface
ActivityFeign
{
public
interface
ActivityFeign
{
public
static
final
Integer
TYPE_CHECK
=
2
;
public
static
final
Integer
TYPE_USE
=
1
;
public
static
final
Integer
TYPE_USE
=
1
;
public
static
final
Integer
TYPE_NO_USE
=
0
;
public
static
final
Integer
TYPE_NO_USE
=
0
;
...
...
xx-activity/xx-activity-server/src/main/java/com/xxfc/platform/activity/biz/UserCouponBiz.java
View file @
f5c290d6
...
@@ -16,6 +16,7 @@ import com.xxfc.platform.activity.dto.UserCouponSendDTO;
...
@@ -16,6 +16,7 @@ import com.xxfc.platform.activity.dto.UserCouponSendDTO;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.entity.Coupon
;
import
com.xxfc.platform.activity.entity.IntegralUserTotal
;
import
com.xxfc.platform.activity.entity.IntegralUserTotal
;
import
com.xxfc.platform.activity.entity.UserCoupon
;
import
com.xxfc.platform.activity.entity.UserCoupon
;
import
com.xxfc.platform.activity.feign.ActivityFeign
;
import
com.xxfc.platform.activity.vo.CouponVo
;
import
com.xxfc.platform.activity.vo.CouponVo
;
import
com.xxfc.platform.activity.vo.UserCouponPageVo
;
import
com.xxfc.platform.activity.vo.UserCouponPageVo
;
import
com.xxfc.platform.activity.vo.UserCouponVo
;
import
com.xxfc.platform.activity.vo.UserCouponVo
;
...
@@ -289,7 +290,7 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
...
@@ -289,7 +290,7 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
return
mapper
.
getUserCoupon
(
tickerNo
);
return
mapper
.
getUserCoupon
(
tickerNo
);
}
}
//支付后更新优惠卷状态:type.1-
//支付后更新优惠卷状态:type.1-
触发使用优惠券;0-不触发优惠券使用(在优惠券未使用时);2--不触发优惠券使用(不管优惠券是否已使用)
public
BigDecimal
useTickerNo
(
Integer
userId
,
List
<
String
>
tickerNos
,
String
orderNo
,
Integer
channel
,
BigDecimal
amout
,
Integer
type
){
public
BigDecimal
useTickerNo
(
Integer
userId
,
List
<
String
>
tickerNos
,
String
orderNo
,
Integer
channel
,
BigDecimal
amout
,
Integer
type
){
BigDecimal
couponAmout
=
new
BigDecimal
(
"0.00"
);
BigDecimal
couponAmout
=
new
BigDecimal
(
"0.00"
);
if
(
couponAmout
.
compareTo
(
amout
)
>=
0
)
{
if
(
couponAmout
.
compareTo
(
amout
)
>=
0
)
{
...
@@ -307,7 +308,8 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
...
@@ -307,7 +308,8 @@ public class UserCouponBiz extends BaseBiz<UserCouponMapper, UserCoupon> {
return
couponAmout
;
return
couponAmout
;
}
}
for
(
UserCoupon
userCoupon:
list
)
{
for
(
UserCoupon
userCoupon:
list
)
{
if
(
userCoupon
!=
null
&&
userCoupon
.
getIsUse
()==
1
){
//zjw_0907 当type 为 check(即2)不判断 优惠券是否已使用
if
(
userCoupon
!=
null
&&
userCoupon
.
getIsUse
()==
1
&&
!
ActivityFeign
.
TYPE_CHECK
.
equals
(
type
)){
log
.
error
(
userId
+
"----该优惠卷已使用--tickerNo=="
);
log
.
error
(
userId
+
"----该优惠卷已使用--tickerNo=="
);
continue
;
continue
;
}
}
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/contant/enumerate/OrderViolateEnum.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
order
.
contant
.
enumerate
;
import
java.util.HashMap
;
import
java.util.Map
;
public
enum
OrderViolateEnum
{
BEFORE
(
1
,
"提前"
),
AFTER
(
2
,
"延期"
)
;
/**
* 编码
*/
private
Integer
code
;
/**
* 类型描述
*/
private
String
desc
;
public
static
Map
<
Integer
,
OrderTypeEnum
>
codeAndDesc
=
new
HashMap
<
Integer
,
OrderTypeEnum
>();
//Maps.newHashMap();
static
{
for
(
OrderTypeEnum
enumE
:
OrderTypeEnum
.
values
()){
codeAndDesc
.
put
(
enumE
.
getCode
(),
enumE
);
}
}
OrderViolateEnum
(
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
OrderTypeEnum
get
(
Integer
code
)
{
for
(
OrderTypeEnum
enumE
:
OrderTypeEnum
.
values
())
{
if
(
enumE
.
getCode
().
equals
(
code
))
{
return
enumE
;
}
}
return
null
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/BaseOrder.java
View file @
f5c290d6
...
@@ -3,9 +3,11 @@ package com.xxfc.platform.order.entity;
...
@@ -3,9 +3,11 @@ package com.xxfc.platform.order.entity;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
org.assertj.core.util.Lists
;
import
tk.mybatis.mapper.annotation.Version
;
import
tk.mybatis.mapper.annotation.Version
;
...
@@ -249,4 +251,32 @@ public class BaseOrder implements Serializable {
...
@@ -249,4 +251,32 @@ public class BaseOrder implements Serializable {
@ApiModelProperty
(
value
=
"下单时的会员等级"
)
@ApiModelProperty
(
value
=
"下单时的会员等级"
)
@Column
(
name
=
"member_level"
)
@Column
(
name
=
"member_level"
)
private
Integer
memberLevel
;
private
Integer
memberLevel
;
/**
* 违约金
*/
@ApiModelProperty
(
value
=
"违约金"
)
@Column
(
name
=
"violate_amount"
)
BigDecimal
ViolateAmount
;
/**
* 赔偿金
*/
@ApiModelProperty
(
value
=
"赔偿金"
)
@Column
(
name
=
"damages_amount"
)
BigDecimal
damagesAmount
;
/**
* 额外费用
*/
@ApiModelProperty
(
value
=
"额外费用"
)
@Column
(
name
=
"extra_amount"
)
BigDecimal
extraAmount
;
/**
* 返还的优惠券
*/
@ApiModelProperty
(
value
=
"返回的优惠券"
)
@Column
(
name
=
"back_coupon"
)
String
backCoupon
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderRentVehicleDetail.java
View file @
f5c290d6
...
@@ -308,4 +308,11 @@ public class OrderRentVehicleDetail implements Serializable {
...
@@ -308,4 +308,11 @@ public class OrderRentVehicleDetail implements Serializable {
@Column
(
name
=
"fixed_loss_status"
)
@Column
(
name
=
"fixed_loss_status"
)
private
Integer
fixedLossStatus
;
private
Integer
fixedLossStatus
;
/**
* 返还的免费天数
*/
@ApiModelProperty
(
value
=
"返回的免费天数"
)
@Column
(
name
=
"back_free_days"
)
Integer
backFreeDays
;
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderVehicleCrosstown.java
View file @
f5c290d6
...
@@ -105,6 +105,13 @@ public class OrderVehicleCrosstown {
...
@@ -105,6 +105,13 @@ public class OrderVehicleCrosstown {
*/
*/
private
String
dedDetail
;
private
String
dedDetail
;
/**
* 租车违约金明细
*/
@Column
(
name
=
"violate_amount_detail"
)
private
String
violateDetail
;
/**
/**
* 1、交车, 2、还车, 3、定损还车
* 1、交车, 2、还车, 3、定损还车
*/
*/
...
...
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/calculate/InProgressVO.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
order
.
pojo
.
calculate
;
import
lombok.Data
;
import
org.assertj.core.util.Lists
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Data
public
class
InProgressVO
{
/**
* 违约金
*/
BigDecimal
ViolateAmount
=
BigDecimal
.
ZERO
;
/**
* 赔偿金
*/
BigDecimal
damagesAmount
=
BigDecimal
.
ZERO
;
/**
* 额外费用
*/
BigDecimal
extraAmount
=
BigDecimal
.
ZERO
;
/**
* 返还的优惠券
*/
List
<
String
>
backCoupons
=
Lists
.
newArrayList
();
/**
* 返还的免费天数
*/
Integer
backFreeDays
=
0
;
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderVehicleCrosstownBiz.java
View file @
f5c290d6
This diff is collapsed.
Click to expand it.
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCalculateBiz.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
order
.
biz
.
inner
;
import
cn.hutool.core.date.DateUtil
;
import
com.github.wxiaoqi.security.admin.feign.UserFeign
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
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.app.entity.Cofig
;
import
com.xxfc.platform.app.feign.ConfigFeign
;
import
com.xxfc.platform.order.biz.OrderItemBiz
;
import
com.xxfc.platform.order.biz.OrderRefundBiz
;
import
com.xxfc.platform.order.contant.enumerate.ItemTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.OrderTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.RefundStatusEnum
;
import
com.xxfc.platform.order.contant.enumerate.RefundTypeEnum
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.pojo.calculate.InProgressVO
;
import
com.xxfc.platform.universal.constant.DictionaryKey
;
import
com.xxfc.platform.universal.dto.SmsTemplateDTO
;
import
com.xxfc.platform.universal.entity.Dictionary
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.vehicle.entity.BranchCompany
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
com.xxfc.platform.vehicle.pojo.CompanyDetail
;
import
lombok.extern.slf4j.Slf4j
;
import
org.assertj.core.util.Lists
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
HOUR_MINUTE_FORMATTE_HUTOOL
;
import
static
com
.
github
.
wxiaoqi
.
security
.
common
.
constant
.
CommonConstants
.
SYS_FALSE
;
import
static
com
.
xxfc
.
platform
.
universal
.
constant
.
DictionaryKey
.
APP_ORDER
;
/**
* 订单退款记录表
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 11:08:09
*/
@Slf4j
@Service
public
class
OrderCalculateBiz
{
@Autowired
UserFeign
userFeign
;
@Autowired
ThirdFeign
thirdFeign
;
@Autowired
VehicleFeign
vehicleFeign
;
@Autowired
ConfigFeign
configFeign
;
@Autowired
ActivityFeign
activityFeign
;
@Autowired
OrderRefundBiz
orderRefundBiz
;
@Autowired
OrderItemBiz
orderItemBiz
;
public
InProgressVO
inProgressCalculate
(
BaseOrder
baseOrder
,
OrderItem
orderItem
,
Integer
freeDays
,
Integer
useDays
)
{
//计算:剩余免费天数
Integer
backFreeDays
=
freeDays
-
useDays
;
//过了出发时间取消订单 ,优先使用免费天数
if
(
backFreeDays
<=
0
)
{
//大于总天数 只返回押金
if
(
useDays
>=
orderItem
.
getTotalNum
())
{
//退押金
//orderRefundBiz.rentRefundDepositProcess(hasUpdateOrder, orvd.getDeposit(), timeLag, APP_ORDER+ "_"+ RENT_REFUND, freeDayAmount);
}
else
{
//需要扣除订单费用
//判断是否达到优惠券条件 不符合则返还优惠券
Integer
consumeDays
=
0
-
backFreeDays
;
//计算使用天数的费用
BigDecimal
consumeAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
consumeDays
+
""
));
List
<
String
>
backCouponNos
=
Lists
.
newArrayList
();
List
<
BigDecimal
>
couponAmounts
=
Lists
.
newArrayList
();
for
(
String
tickerNo
:
baseOrder
.
getCouponTickerNos
().
split
(
","
))
{
BigDecimal
couponAmount
=
activityFeign
.
use
(
baseOrder
.
getUserId
(),
Lists
.
newArrayList
(
tickerNo
),
baseOrder
.
getNo
(),
Coupon
.
CHANNEL_RENT
,
consumeAmount
,
ActivityFeign
.
TYPE_CHECK
);
if
(
couponAmount
.
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
//能够使用优惠券,则不返还
couponAmounts
.
add
(
couponAmount
);
}
else
{
backCouponNos
.
add
(
tickerNo
);
}
}
}
}
else
{
//返回剩余免费天数,返回优惠券,订单款
}
return
new
InProgressVO
();
}
public
InProgressVO
inProgressCalculate
(
BaseOrder
baseOrder
,
Integer
useDays
)
{
OrderItem
orderItem
=
orderItemBiz
.
selectOne
(
new
OrderItem
(){{
setType
(
ItemTypeEnum
.
VEHICLE_MODEL
.
getCode
());
setOrderId
(
baseOrder
.
getId
());
}});
Integer
freeDays
=
(
null
==
orderItem
.
getCutNum
())?
0
:
orderItem
.
getCutNum
();
return
inProgressCalculate
(
baseOrder
,
orderItem
,
freeDays
,
useDays
);
}
}
\ No newline at end of file
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/inner/OrderCancelBiz.java
View file @
f5c290d6
...
@@ -4,15 +4,19 @@ import com.github.wxiaoqi.security.admin.feign.UserFeign;
...
@@ -4,15 +4,19 @@ import com.github.wxiaoqi.security.admin.feign.UserFeign;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
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.*
;
import
com.xxfc.platform.order.biz.*
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.contant.enumerate.*
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.entity.*
;
import
com.xxfc.platform.order.pojo.calculate.InProgressVO
;
import
com.xxfc.platform.order.pojo.mq.OrderMQDTO
;
import
com.xxfc.platform.order.pojo.mq.OrderMQDTO
;
import
com.xxfc.platform.tour.feign.TourFeign
;
import
com.xxfc.platform.tour.feign.TourFeign
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.universal.feign.ThirdFeign
;
import
com.xxfc.platform.vehicle.common.RestResponse
;
import
com.xxfc.platform.vehicle.common.RestResponse
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
com.xxfc.platform.vehicle.feign.VehicleFeign
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.assertj.core.util.Lists
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -55,6 +59,9 @@ public class OrderCancelBiz {
...
@@ -55,6 +59,9 @@ public class OrderCancelBiz {
@Autowired
@Autowired
OrderMsgBiz
orderMsgBiz
;
OrderMsgBiz
orderMsgBiz
;
@Autowired
OrderCalculateBiz
orderCalculateBiz
;
@Autowired
@Autowired
UserFeign
userFeign
;
UserFeign
userFeign
;
...
@@ -67,6 +74,9 @@ public class OrderCancelBiz {
...
@@ -67,6 +74,9 @@ public class OrderCancelBiz {
@Autowired
@Autowired
ThirdFeign
thirdFeign
;
ThirdFeign
thirdFeign
;
@Autowired
ActivityFeign
activityFeign
;
private
static
Map
<
Integer
,
List
<
Integer
>>
cancelAble
;
private
static
Map
<
Integer
,
List
<
Integer
>>
cancelAble
;
static
{
static
{
cancelAble
=
new
HashMap
<
Integer
,
List
<
Integer
>>();
cancelAble
=
new
HashMap
<
Integer
,
List
<
Integer
>>();
...
@@ -110,28 +120,41 @@ public class OrderCancelBiz {
...
@@ -110,28 +120,41 @@ public class OrderCancelBiz {
setOrderId
(
baseOrder
.
getId
());
setOrderId
(
baseOrder
.
getId
());
}});
}});
OrderItem
orderItem
=
orderItemBiz
.
selectOne
(
new
OrderItem
(){{
setType
(
ItemTypeEnum
.
VEHICLE_MODEL
.
getCode
());
setOrderId
(
baseOrder
.
getId
());
}});
//原退还押金
//原退还押金
Integer
freeDays
=
(
null
==
orderItem
.
getCutNum
())?
0
:
orderItem
.
getCutNum
();
BigDecimal
freeDayAmount
=
BigDecimal
.
ZERO
;
BigDecimal
freeDayAmount
=
BigDecimal
.
ZERO
;
//判断是否使用免费天数,并且进行扣款
if
(
null
!=
orvd
.
getFreeDays
()
&&
orvd
.
getFreeDays
()
>
0
)
{
OrderItem
orderItem
=
orderItemBiz
.
selectOne
(
new
OrderItem
(){{
setType
(
ItemTypeEnum
.
VEHICLE_MODEL
.
getCode
());
setOrderId
(
baseOrder
.
getId
());
}});
freeDayAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
orvd
.
getFreeDays
()+
""
));
}
//如果超过出发时间,不能取消订单
//如果超过出发时间,不能取消订单
//根据时间处理goodsAmount
//根据时间处理goodsAmount
//获取出发时间 到现在 距离时间
//获取出发时间 到现在 距离时间
Long
timeLag
=
orvd
.
getStartTime
()
-
System
.
currentTimeMillis
();
Long
timeLag
=
orvd
.
getStartTime
()
-
System
.
currentTimeMillis
();
//后面允许开始时间过后可以取消订单
if
(
timeLag
<
0
)
{
// if(timeLag < 0) {
//计算:使用天数 当前时间 - 开始时间的0时0分0秒
// throw new BaseException(ResultCode.FAILED_CODE, new HashSet<String>(){{
Long
useTimeLag
=
System
.
currentTimeMillis
()
-
orvd
.
getStartTime
();
// add("已超过出发时间,不能取消订单");
Integer
useDays
=
new
BigDecimal
(
useTimeLag
+
""
).
divide
(
new
BigDecimal
((
24
*
60
*
60
*
1000
)+
""
)).
setScale
(
0
,
BigDecimal
.
ROUND_UP
).
intValue
();
// }});
orderCalculateBiz
.
inProgressCalculate
(
baseOrder
,
orderItem
,
freeDays
,
useDays
);
// }
}
else
{
//没到出车时间
//判断是否使用免费天数,并且进行扣款
if
(
freeDays
>
0
)
{
freeDayAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
orvd
.
getFreeDays
()+
""
));
//违约金封顶 租车身份价 * 2天
BigDecimal
topAmount
=
orderItem
.
getUnitPrice
().
multiply
(
new
BigDecimal
(
"2"
));
if
(
freeDayAmount
.
compareTo
(
topAmount
)
>
0
)
{
freeDayAmount
=
freeDayAmount
;
}
}
}
//退款流程
//退款流程
//退订单款
//退订单款
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/DailyTravelOrderStatisticsMapper.java
View file @
f5c290d6
...
@@ -19,5 +19,5 @@ public interface DailyTravelOrderStatisticsMapper extends Mapper<DailyTravelOrde
...
@@ -19,5 +19,5 @@ public interface DailyTravelOrderStatisticsMapper extends Mapper<DailyTravelOrde
List
<
DailyTravelOrderStatistics
>
getTravelPenalSum
(
@Param
(
"day"
)
Integer
day
);
List
<
DailyTravelOrderStatistics
>
getTravelPenalSum
(
@Param
(
"day"
)
Integer
day
);
OrderStatistics
monthOrderTotal
(
Integer
branchC
ompanyId
);
OrderStatistics
monthOrderTotal
(
@Param
(
"companyId"
)
Integer
c
ompanyId
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/mapper/DailyVehicleOrderStatisticsMapper.java
View file @
f5c290d6
...
@@ -25,5 +25,5 @@ public interface DailyVehicleOrderStatisticsMapper extends Mapper<DailyVehicleOr
...
@@ -25,5 +25,5 @@ public interface DailyVehicleOrderStatisticsMapper extends Mapper<DailyVehicleOr
List
<
DailyVehicleOrderStatistics
>
getViolationMoney
(
@Param
(
"day"
)
Integer
day
);
List
<
DailyVehicleOrderStatistics
>
getViolationMoney
(
@Param
(
"day"
)
Integer
day
);
OrderStatistics
monthOrderTotal
(
Integer
companyId
);
OrderStatistics
monthOrderTotal
(
@Param
(
"companyId"
)
Integer
companyId
);
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/OrderStatisticsController.java
View file @
f5c290d6
...
@@ -52,6 +52,11 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
...
@@ -52,6 +52,11 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
*/
*/
private
final
Integer
TYPE_TOTAL
=
4
;
private
final
Integer
TYPE_TOTAL
=
4
;
/**
* 数据权限
*/
private
final
Integer
DATA_AUTHORITY
=
1
;
@Autowired
@Autowired
private
DailyVehicleOrderStatisticsBiz
vehicleBiz
;
private
DailyVehicleOrderStatisticsBiz
vehicleBiz
;
...
@@ -77,6 +82,10 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
...
@@ -77,6 +82,10 @@ public class OrderStatisticsController extends BaseController<OrderStatisticsBiz
UserDTO
user
=
userDTOObjectRestResponse
.
getData
();
UserDTO
user
=
userDTOObjectRestResponse
.
getData
();
Integer
companyId
=
user
.
getCompanyId
();
Integer
companyId
=
user
.
getCompanyId
();
if
(
DATA_AUTHORITY
.
equals
(
user
.
getDataAll
())){
companyId
=
null
;
}
if
(
TYPE_VEHICLE
.
equals
(
type
))
{
if
(
TYPE_VEHICLE
.
equals
(
type
))
{
OrderStatistics
vehicle
=
vehicleBiz
.
findAll
(
companyId
);
OrderStatistics
vehicle
=
vehicleBiz
.
findAll
(
companyId
);
return
ObjectRestResponse
.
succ
(
vehicle
);
return
ObjectRestResponse
.
succ
(
vehicle
);
...
...
xx-order/xx-order-server/src/main/resources/mapper/DailyMembersOrderStatisticsMapper.xml
View file @
f5c290d6
...
@@ -16,33 +16,37 @@
...
@@ -16,33 +16,37 @@
</select>
</select>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
SELECT
IFNULL(sum(gmv),0) as totalGmv
IFNULL(sum(gmv),0) as totalGmv
FROM
FROM
(
(
SELECT
SELECT
ANY_VALUE(id) AS id ,
ANY_VALUE(id) AS id ,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(crt_time) AS crt_time
ANY_VALUE(crt_time) AS crt_time
FROM
FROM
daily_members_order_statistics
daily_members_order_statistics
GROUP BY
GROUP BY
one_day,branch_company_id
one_day,branch_company_id
) m
) m
WHERE
WHERE
branch_company_id =#{companyId}
1=1
<if
test=
"companyId != null"
>
and branch_company_id =#{companyId}
</if>
</select>
</select>
<!-- <select id="updateByExampleSelective">-->
<!-- <select id="updateByExampleSelective">-->
<!-- SELECT-->
<!-- SELECT-->
<!-- IFNULL(sum(gmv),0) as totalGmv-->
<!-- IFNULL(sum(gmv),0) as totalGmv-->
<!-- FROM-->
<!-- FROM-->
<!-- daily_members_order_statistics-->
<!-- daily_members_order_statistics-->
<!-- WHERE-->
<!-- WHERE-->
<!-- branch_company_id =#{companyId}-->
<!-- branch_company_id =#{companyId}-->
<!-- and-->
<!-- and-->
<!-- DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),interval 1 day),'%Y-%c')-->
<!-- DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),interval 1 day),'%Y-%c')-->
<!-- </select>-->
<!-- </select>-->
</mapper>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/DailyTravelOrderStatisticsMapper.xml
View file @
f5c290d6
...
@@ -55,31 +55,34 @@
...
@@ -55,31 +55,34 @@
IFNULL(sum(penal_sum) ,0) as totalPenalSum
IFNULL(sum(penal_sum) ,0) as totalPenalSum
FROM
FROM
(
(
SELECT
SELECT
ANY_VALUE(id) AS id,
ANY_VALUE(id) AS id,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(branch_company_id) AS branch_company_id,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(one_day) AS one_day,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(crt_time) AS crt_time
ANY_VALUE(crt_time) AS crt_time
FROM
FROM
daily_travel_order_statistics
daily_travel_order_statistics
GROUP BY
GROUP BY
one_day,branch_company_id
one_day,branch_company_id
) o
) o
WHERE
WHERE
branch_company_id =#{companyId}
1=1
<if
test=
"companyId != null"
>
and branch_company_id =#{companyId}
</if>
</select>
</select>
<!-- <select id="updateByExampleSelective">-->
<!-- <select id="updateByExampleSelective">-->
<!-- SELECT-->
<!-- SELECT-->
<!-- IFNULL(sum(gmv),0) as totalGmv,-->
<!-- IFNULL(sum(gmv),0) as totalGmv,-->
<!-- IFNULL(sum(penal_sum) ,0) as totalPenalSum-->
<!-- IFNULL(sum(penal_sum) ,0) as totalPenalSum-->
<!-- FROM-->
<!-- FROM-->
<!-- daily_travel_order_statistics-->
<!-- daily_travel_order_statistics-->
<!-- WHERE-->
<!-- WHERE-->
<!-- branch_company_id =#{branchCompanyId}-->
<!-- branch_company_id =#{branchCompanyId}-->
<!-- AND-->
<!-- AND-->
<!-- DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 DAY),'%Y-%c')-->
<!-- DATE_FORMAT(one_day,'%Y-%c')=DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 DAY),'%Y-%c')-->
<!-- </select>-->
<!-- </select>-->
</mapper>
</mapper>
\ No newline at end of file
xx-order/xx-order-server/src/main/resources/mapper/DailyVehicleOrderStatisticsMapper.xml
View file @
f5c290d6
...
@@ -80,6 +80,40 @@
...
@@ -80,6 +80,40 @@
</select>
</select>
<!-- 获取赔偿和延期JSON字符串-->
<!-- 获取赔偿和延期JSON字符串-->
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
IFNULL(sum(gmv),0) as totalGmv,
(IFNULL(sum(security_deposit),0)-IFNULL(sum(refund_security_deposit) ,0)) as totalSecurityDeposit,
IFNULL(sum(refund_security_deposit) ,0) as totalRefundSecurityDeposit,
IFNULL(sum(compensation) ,0) as totalCompensation,
IFNULL(sum(forfeit) ,0) as totalForfeit,
IFNULL(sum(penal_sum) ,0) as totalPenalSum,
IFNULL(sum(postpone) ,0) as totalPostpone
FROM
(
SELECT
ANY_VALUE(id) as id,
one_day,
branch_company_id,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(security_deposit) AS security_deposit,
ANY_VALUE(refund_security_deposit) AS refund_security_deposit,
ANY_VALUE(forfeit) AS forfeit,ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(postpone) AS postpone,ANY_VALUE(crt_time) AS crt_time,
ANY_VALUE(compensation) AS compensation
FROM
daily_vehicle_order_statistics
GROUP BY
one_day,branch_company_id
) a
WHERE
1=1
<if
test=
"companyId != null"
>
and branch_company_id = #{companyId}
</if>
</select>
<!--违章-->
<select
id=
"getCompensationAndPostpone"
resultType=
"HashMap"
>
<select
id=
"getCompensationAndPostpone"
resultType=
"HashMap"
>
SELECT
SELECT
v.start_company_id AS branchCompanyId,
v.start_company_id AS branchCompanyId,
...
@@ -105,7 +139,7 @@
...
@@ -105,7 +139,7 @@
order by v.start_company_id asc
order by v.start_company_id asc
</select>
</select>
<!--违章-->
<select
id=
"getViolationMoney"
resultType=
"com.xxfc.platform.order.entity.DailyVehicleOrderStatistics"
>
<select
id=
"getViolationMoney"
resultType=
"com.xxfc.platform.order.entity.DailyVehicleOrderStatistics"
>
SELECT
SELECT
d.start_company_id AS branchCompanyId,
d.start_company_id AS branchCompanyId,
...
@@ -136,37 +170,6 @@
...
@@ -136,37 +170,6 @@
d.start_company_id
d.start_company_id
</select>
</select>
<select
id=
"monthOrderTotal"
resultType=
"com.xxfc.platform.order.entity.OrderStatistics"
>
SELECT
IFNULL(sum(gmv),0) as totalGmv,
(IFNULL(sum(security_deposit),0)-IFNULL(sum(refund_security_deposit) ,0)) as totalSecurityDeposit,
IFNULL(sum(refund_security_deposit) ,0) as totalRefundSecurityDeposit,
IFNULL(sum(compensation) ,0) as totalCompensation,
IFNULL(sum(forfeit) ,0) as totalForfeit,
IFNULL(sum(penal_sum) ,0) as totalPenalSum,
IFNULL(sum(postpone) ,0) as totalPostpone
FROM
(
SELECT
ANY_VALUE(id) as id,
one_day,
branch_company_id,
ANY_VALUE(gmv) AS gmv,
ANY_VALUE(security_deposit) AS security_deposit,
ANY_VALUE(refund_security_deposit) AS refund_security_deposit,
ANY_VALUE(forfeit) AS forfeit,ANY_VALUE(penal_sum) AS penal_sum,
ANY_VALUE(postpone) AS postpone,ANY_VALUE(crt_time) AS crt_time,
ANY_VALUE(compensation) AS compensation
FROM
daily_vehicle_order_statistics
GROUP BY
one_day,branch_company_id
) a
WHERE
branch_company_id = #{companyId}
</select>
<!-- <select id="updateByExampleSelective">-->
<!-- <select id="updateByExampleSelective">-->
<!-- SELECT-->
<!-- SELECT-->
<!-- IFNULL(sum(gmv),0) as totalGmv,-->
<!-- IFNULL(sum(gmv),0) as totalGmv,-->
...
...
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/dto/ModelDto.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
dto
;
import
com.xxfc.platform.uccn.entity.Model
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
@Data
@NoArgsConstructor
public
class
ModelDto
{
private
Model
parent
;
private
List
<
Model
>
list
;
public
ModelDto
(
Model
parent
,
List
<
Model
>
list
)
{
this
.
parent
=
parent
;
this
.
list
=
list
;
}
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/dto/SeoDTO.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
dto
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
@Data
@Api
public
class
SeoDTO
extends
SEO
{
@Column
(
name
=
"modeName"
)
@ApiModelProperty
(
value
=
"模块名称"
)
private
String
modelName
;
@Column
(
name
=
"model_id"
)
@ApiModelProperty
(
value
=
"模块id"
)
private
Integer
modelId
;
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/entity/Model.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
entity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
javafx.scene.input.Mnemonic
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.persistence.*
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
@Table
(
name
=
"model"
)
@ApiModel
(
value
=
"官网模块实体"
)
@NoArgsConstructor
public
class
Model
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
@ApiModelProperty
(
value
=
"主键"
)
private
Integer
id
;
@Column
(
name
=
"parent_id"
)
@ApiModelProperty
(
value
=
"父模块id"
)
private
Integer
parentId
;
@Column
(
name
=
"name"
)
@ApiModelProperty
(
value
=
"模块名称"
)
private
String
name
;
@Column
(
name
=
"level"
)
@ApiModelProperty
(
value
=
"模块等级"
)
private
Integer
level
;
@Column
(
name
=
"cre_time"
)
@ApiModelProperty
(
value
=
" 创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
creTime
;
@Column
(
name
=
"upd_time"
)
@ApiModelProperty
(
value
=
"修改时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
updTime
;
@Column
(
name
=
"is_del"
)
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
isDel
;
@Column
(
name
=
"rank"
)
@ApiModelProperty
(
value
=
"排序"
)
private
Integer
rank
;
public
Model
(
Integer
id
)
{
this
.
id
=
id
;
}
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/entity/SEO.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
entity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
javax.persistence.*
;
import
java.util.Date
;
@Data
@Table
(
name
=
"seo"
)
@ApiModel
(
value
=
"seo列表实体"
)
@NoArgsConstructor
public
class
SEO
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
@ApiModelProperty
(
value
=
"主键"
)
private
Integer
id
;
@Column
(
name
=
"model_id"
)
@ApiModelProperty
(
value
=
"模块id"
)
private
Integer
modelId
;
@Column
(
name
=
"title"
)
@ApiModelProperty
(
value
=
"title内容"
)
private
String
title
;
@Column
(
name
=
"keywords"
)
@ApiModelProperty
(
value
=
"关键子"
)
private
String
keywords
;
@Column
(
name
=
"description"
)
@ApiModelProperty
(
value
=
"description内容"
)
private
String
description
;
@Column
(
name
=
"header"
)
@ApiModelProperty
(
value
=
"标题"
)
private
String
header
;
@Column
(
name
=
"cre_time"
)
@ApiModelProperty
(
value
=
" 创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
creTime
;
@Column
(
name
=
"upd_time"
)
@ApiModelProperty
(
value
=
"修改时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
updTime
;
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/vo/ModelQuery.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
vo
;
import
lombok.Data
;
/**
* @author Administrator
*/
@Data
public
class
ModelQuery
{
private
Integer
page
=
1
;
private
Integer
limit
=
10
;
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/vo/ModelVo.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
vo
;
import
com.xxfc.platform.uccn.entity.Model
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ModelVo
{
private
Integer
parentId
;
private
List
<
Model
>
list
;
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/vo/SEOQuery.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
vo
;
import
lombok.Data
;
/**
* @author Administrator
*/
@Data
public
class
SEOQuery
{
private
Integer
page
=
1
;
private
Integer
limit
=
10
;
}
xx-uccn/xx-uccn-api/src/main/java/com/xxfc/platform/uccn/vo/SEOVo.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
vo
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
lombok.Data
;
@Data
public
class
SEOVo
extends
SEO
{
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/biz/ModelBackgroundBiz.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
biz
;
import
com.ace.cache.annotation.Cache
;
import
com.ace.cache.annotation.CacheClear
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.xxfc.platform.uccn.dto.ModelDto
;
import
com.xxfc.platform.uccn.entity.Model
;
import
com.xxfc.platform.uccn.vo.ModelVo
;
import
com.xxfc.platform.uccn.mapper.ModelBackgroundMapper
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.ApplicationContext
;
import
org.springframework.stereotype.Service
;
import
tk.mybatis.mapper.entity.Example
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
@Service
public
class
ModelBackgroundBiz
extends
BaseBiz
<
ModelBackgroundMapper
,
Model
>
{
private
final
Integer
BASE_PARENT_ID
=
0
;
private
final
Integer
NOT_DELETE
=
0
;
private
final
Integer
level
=
2
;
@Autowired
private
ApplicationContext
context
;
public
List
<
ModelDto
>
getList
()
{
List
<
Model
>
ModelList
=
getProxy
().
getListByParentId
(
BASE_PARENT_ID
);
if
(
CollectionUtils
.
isEmpty
(
ModelList
))
{
return
new
ArrayList
<>();
}
return
getModelDtos
(
ModelList
);
}
/**
* 获取ModelDto集合
* @param models
* @return
*/
private
ArrayList
<
ModelDto
>
getModelDtos
(
List
<
Model
>
models
)
{
ArrayList
<
ModelDto
>
modelDtos
=
new
ArrayList
<>();
for
(
Model
el
:
models
)
{
if
(
el
.
getLevel
()==
3
)
{
break
;
}
List
<
Model
>
list
=
getListByParentId
(
el
.
getId
());
modelDtos
.
add
(
new
ModelDto
(
el
,
list
));
modelDtos
.
addAll
(
getModelDtos
(
list
));
}
return
modelDtos
;
}
/**
* 根据父类id获取所有子类集合
*
* @param parentId
* @return
*/
// @Cache(key = "ModelList{1}")
public
List
<
Model
>
getListByParentId
(
Integer
parentId
)
{
Example
exa
=
new
Example
(
Model
.
class
);
Example
.
Criteria
criteria
=
exa
.
createCriteria
();
criteria
.
andEqualTo
(
"parentId"
,
parentId
).
andEqualTo
(
"isDel"
,
NOT_DELETE
);
exa
.
orderBy
(
"rank"
).
asc
();
return
mapper
.
selectByExample
(
exa
);
}
/**
* 获取代理对象
*
* @return
*/
private
ModelBackgroundBiz
getProxy
()
{
return
context
.
getBean
(
ModelBackgroundBiz
.
class
);
}
/**
* 修改子模块
*
* @param Modelvo
* @return
*/
// @CacheClear(key = "ModelList{1.Integer}")
public
String
update
(
ModelVo
Modelvo
)
{
if
(
Modelvo
==
null
||
Modelvo
.
getParentId
()==
null
)
{
return
"无修改数据"
;
}
Model
Model
=
selectById
(
Modelvo
.
getParentId
());
if
(
Model
==
null
||(!
Model
.
getIsDel
().
equals
(
NOT_DELETE
))||
BASE_PARENT_ID
.
equals
(
Model
.
getParentId
()))
{
return
"该标签不能修改"
;
}
if
(
CollectionUtils
.
isNotEmpty
(
Modelvo
.
getList
()))
{
for
(
Model
el
:
Modelvo
.
getList
())
{
if
(
el
.
getId
()==
null
)
{
el
.
setIsDel
(
NOT_DELETE
);
el
.
setCreTime
(
new
Date
());
el
.
setParentId
(
Modelvo
.
getParentId
());
if
(
el
.
getRank
()
==
null
)
{
el
.
setRank
(
0
);
}
mapper
.
insertSelective
(
el
);
}
else
{
el
.
setUpdTime
(
new
Date
());
mapper
.
updateByPrimaryKeySelective
(
el
);
}
}
}
return
null
;
}
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/biz/SEOBiz.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
biz
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.xxfc.platform.uccn.dto.SeoDTO
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
com.xxfc.platform.uccn.mapper.SEOMapper
;
import
com.xxfc.platform.uccn.vo.SEOQuery
;
import
com.xxfc.platform.uccn.vo.SEOVo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.beanutils.BeanUtilsBean
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
tk.mybatis.mapper.entity.Example
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author Administrator
*/
@Service
@Slf4j
public
class
SEOBiz
extends
BaseBiz
<
SEOMapper
,
SEO
>
{
public
PageInfo
<
SeoDTO
>
getList
(
SEOQuery
query
)
{
PageHelper
.
startPage
(
query
.
getPage
(),
query
.
getLimit
());
List
<
SeoDTO
>
seodtoList
=
mapper
.
getSEODTOList
();
return
PageInfo
.
of
(
seodtoList
);
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
update
(
SEOVo
seoVo
)
{
try
{
if
(
seoVo
==
null
)
{
return
false
;
}
SEO
seo
=
new
SEO
();
BeanUtilsBean
.
getInstance
().
copyProperties
(
seo
,
seoVo
);
Example
example
=
new
Example
(
SEO
.
class
);
example
.
createCriteria
().
andEqualTo
(
"modelId"
,
seo
.
getModelId
());
List
<
SEO
>
list
=
mapper
.
selectByExample
(
example
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
seo
.
setCreTime
(
new
Date
());
mapper
.
insertSelective
(
seo
);
}
else
if
(
list
.
size
()==
1
){
seo
.
setUpdTime
(
new
Date
());
mapper
.
updateByPrimaryKeySelective
(
seo
);
}
else
{
log
.
error
(
"错误!该模块保存有多个seo"
);
return
false
;
}
return
true
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
false
;
}
}
public
SEO
getSeoByModelId
(
Integer
modelId
)
{
SEO
seo
=
new
SEO
();
seo
.
setModelId
(
modelId
);
return
selectOne
(
seo
);
}
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/mapper/ModelBackgroundMapper.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
mapper
;
import
com.xxfc.platform.uccn.entity.Model
;
import
tk.mybatis.mapper.common.Mapper
;
public
interface
ModelBackgroundMapper
extends
Mapper
<
Model
>
{
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/mapper/SEOMapper.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
mapper
;
import
com.xxfc.platform.uccn.dto.SeoDTO
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
public
interface
SEOMapper
extends
Mapper
<
SEO
>
{
List
<
SeoDTO
>
getSEODTOList
();
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/rest/SEOController.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
rest
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.xxfc.platform.uccn.biz.SEOBiz
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author Administrator
*/
@RestController
@RequestMapping
(
"seo"
)
@Api
(
tags
={
"seo后台管理类"
})
public
class
SEOController
extends
BaseController
<
SEOBiz
,
SEO
>
{
@GetMapping
(
"/app/unauth/officialWebsite/{modelId}"
)
@ApiOperation
(
value
=
"获取官网seo"
)
@IgnoreUserToken
public
ObjectRestResponse
getSeoByModelId
(
@PathVariable
Integer
modelId
){
return
ObjectRestResponse
.
succ
(
baseBiz
.
getSeoByModelId
(
modelId
));
}
}
\ No newline at end of file
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/rest/admin/ModelBackgroundController.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
rest
.
admin
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.uccn.biz.ModelBackgroundBiz
;
import
com.xxfc.platform.uccn.entity.Model
;
import
com.xxfc.platform.uccn.vo.ModelVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
@RestController
@RequestMapping
(
"Model"
)
@Api
(
tags
={
"Model后台管理类"
})
public
class
ModelBackgroundController
extends
BaseController
<
ModelBackgroundBiz
,
Model
>
{
@GetMapping
(
"/list"
)
@ApiOperation
(
value
=
"查询模块列表"
)
public
ObjectRestResponse
findList
(){
return
ObjectRestResponse
.
succ
(
baseBiz
.
getList
());
}
@PutMapping
(
"/upd"
)
@ApiOperation
(
value
=
"修改模块"
)
public
ObjectRestResponse
update
(
@RequestBody
ModelVo
modelvo
){
String
update
=
baseBiz
.
update
(
modelvo
);
if
(
update
==
null
)
{
return
ObjectRestResponse
.
succ
();
}
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
FAILED_CODE
,
update
)
;
}
}
xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/rest/admin/SEOBackgroundController.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
uccn
.
rest
.
admin
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.rest.BaseController
;
import
com.xxfc.platform.uccn.biz.SEOBiz
;
import
com.xxfc.platform.uccn.entity.SEO
;
import
com.xxfc.platform.uccn.vo.SEOQuery
;
import
com.xxfc.platform.uccn.vo.SEOVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
/**
* @author Administrator
*/
@RestController
@RequestMapping
(
"seoBackground"
)
@Api
(
tags
={
"seo后台管理类"
})
public
class
SEOBackgroundController
extends
BaseController
<
SEOBiz
,
SEO
>
{
@PostMapping
(
"/list"
)
@ApiOperation
(
value
=
"查询模块列表"
)
public
ObjectRestResponse
findList
(
@RequestBody
SEOQuery
query
){
return
ObjectRestResponse
.
succ
(
baseBiz
.
getList
(
query
));
}
@PutMapping
(
"/upd"
)
@ApiOperation
(
value
=
"修改模块"
)
public
ObjectRestResponse
update
(
@RequestBody
SEOVo
seoVo
){
boolean
result
=
baseBiz
.
update
(
seoVo
);
if
(
result
)
{
return
ObjectRestResponse
.
succ
();
}
return
ObjectRestResponse
.
createDefaultFail
()
;
}
}
xx-uccn/xx-uccn-server/src/main/resources/mapper/SEOMapper.xml
0 → 100644
View file @
f5c290d6
<?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.uccn.mapper.SEOMapper"
>
<select
id=
"getSEODTOList"
resultType=
"com.xxfc.platform.uccn.dto.SeoDTO"
>
select
m.name as modelName ,
m.id as model_id,
s.id,
s.title as title,
s.keywords as keywords,
s.description as description,
s.header as header
from
model m
left join
seo s
on
m.id= s.model_id
WHERE
m.is_del = 0
ORDER BY
m.`level` ASC
</select>
</mapper>
\ No newline at end of file
xx-universal/xx-universal-api/pom.xml
View file @
f5c290d6
...
@@ -72,6 +72,17 @@
...
@@ -72,6 +72,17 @@
<artifactId>
junrar
</artifactId>
<artifactId>
junrar
</artifactId>
<version>
0.7
</version>
<version>
0.7
</version>
</dependency>
</dependency>
<!-- jpush -->
<dependency>
<groupId>
cn.jpush.api
</groupId>
<artifactId>
jpush-client
</artifactId>
<version>
3.3.7
</version>
</dependency>
<dependency>
<groupId>
cn.jpush.api
</groupId>
<artifactId>
jiguang-common
</artifactId>
<version>
1.1.1
</version>
</dependency>
</dependencies>
</dependencies>
...
...
xx-universal/xx-universal-server/src/main/java/com/xxfc/platform/universal/biz/JPushBiz.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
universal
.
biz
;
import
cn.jiguang.common.ClientConfig
;
import
cn.jiguang.common.resp.APIConnectionException
;
import
cn.jiguang.common.resp.APIRequestException
;
import
cn.jpush.api.JPushClient
;
import
cn.jpush.api.push.PushResult
;
import
cn.jpush.api.push.model.PushPayload
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.xxfc.platform.universal.service.SmsService
;
import
com.xxfc.platform.universal.utils.CCPRestSmsUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
@Service
@Slf4j
public
class
JPushBiz
{
@Value
(
"${universal.MASTER_SECRET}"
)
private
String
MASTER_SECRET
;
@Value
(
"${universal.APP_KEY}"
)
private
String
APP_KEY
;
//推送给所有平台设备
public
ObjectRestResponse
jpushToAllPlat
(
String
title
){
ClientConfig
clientConfig
=
ClientConfig
.
getInstance
();
final
JPushClient
jpushClient
=
new
JPushClient
(
MASTER_SECRET
,
APP_KEY
,
null
,
clientConfig
);
PushPayload
payload
=
PushPayload
.
alertAll
(
title
);
try
{
PushResult
result
=
jpushClient
.
sendPush
(
payload
);
log
.
debug
(
"\n推送结果:"
+
result
);
return
ObjectRestResponse
.
succ
();
}
catch
(
APIConnectionException
e
)
{
// Connection error, should retry later
log
.
debug
(
"\nConnection error, should retry later"
+
e
);
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
FAILED_CODE
,
e
.
getMessage
());
}
catch
(
APIRequestException
e
)
{
// Should review the error, and fix the request
log
.
debug
(
"\nShould review the error, and fix the request"
+
e
);
log
.
debug
(
"\nHTTP Status: "
+
e
.
getStatus
());
log
.
debug
(
"\nError Code: "
+
e
.
getErrorCode
());
log
.
debug
(
"\nError Message: "
+
e
.
getErrorMessage
());
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
FAILED_CODE
,
e
.
getMessage
());
}
}
}
xx-universal/xx-universal-server/src/main/java/com/xxfc/platform/universal/controller/JPushController.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
universal
.
controller
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.universal.biz.JPushBiz
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
/**
* 极光推送
*/
@RestController
@RequestMapping
(
"jpush"
)
@IgnoreUserToken
public
class
JPushController
{
@Autowired
JPushBiz
jPushBiz
;
@RequestMapping
(
value
=
"/app/unauth/all"
,
method
=
RequestMethod
.
GET
)
//匹配的是href中的download请求
public
ObjectRestResponse
sendSms
(
@RequestParam
(
"title"
)
String
title
)
throws
Exception
{
return
jPushBiz
.
jpushToAllPlat
(
title
);
}
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/entity/VehicleUserReserve.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
entity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
@Data
@Table
(
name
=
"vehicle_user_reserve"
)
public
class
VehicleUserReserve
{
@Id
@GeneratedValue
(
generator
=
"JDBC"
)
@ApiModelProperty
(
"主键id"
)
private
Integer
id
;
@Column
(
name
=
"user_id"
)
@ApiModelProperty
(
"用户id"
)
private
Integer
userId
;
@Column
(
name
=
"mode_id"
)
@ApiModelProperty
(
"车型id"
)
private
Integer
modeId
;
@ApiModelProperty
(
"预定姓名"
)
private
String
name
;
@ApiModelProperty
(
"电话"
)
private
String
phone
;
@Column
(
name
=
"start_time"
)
@ApiModelProperty
(
"开始时间"
)
private
Long
startTime
;
@Column
(
name
=
"end_time"
)
@ApiModelProperty
(
"结束时间"
)
private
Long
endTime
;
@Column
(
name
=
"addr_province"
)
@ApiModelProperty
(
"地址-省/直辖市(编码)"
)
private
Integer
addrProvince
;
@Column
(
name
=
"province_name"
)
@ApiModelProperty
(
"省名称"
)
private
String
provinceName
;
@Column
(
name
=
"addr_city"
)
@ApiModelProperty
(
"市编号"
)
private
Integer
addrCity
;
@Column
(
name
=
"city_name"
)
@ApiModelProperty
(
"市名称"
)
private
String
cityName
;
@Column
(
name
=
"company_id"
)
@ApiModelProperty
(
"分公司id"
)
private
Integer
companyId
;
@Column
(
name
=
"crt_time"
)
@ApiModelProperty
(
"创建时间"
)
private
Long
crtTime
;
@Column
(
name
=
"upd_time"
)
@ApiModelProperty
(
"更新时间"
)
private
Long
updTime
;
@ApiModelProperty
(
"0-未处理;1-处理中;2-已处理"
)
private
Integer
status
;
@Column
(
name
=
"is_del"
)
@ApiModelProperty
(
"是否删除:0-正常;1-删除"
)
private
Integer
isDel
;
}
\ No newline at end of file
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/dto/VehicleUserReserveDTO.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
pojo
.
dto
;
import
com.github.wxiaoqi.security.common.vo.PageParam
;
import
lombok.Data
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/23 12:18
*/
@Data
public
class
VehicleUserReserveDTO
extends
PageParam
{
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/vo/VehicleUserReserveVo.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
pojo
.
vo
;
import
com.xxfc.platform.vehicle.entity.VehicleUserReserve
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/23 12:18
*/
@Data
public
class
VehicleUserReserveVo
extends
VehicleUserReserve
{
@ApiModelProperty
(
"车型名称"
)
private
String
modelName
;
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
View file @
f5c290d6
This diff is collapsed.
Click to expand it.
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleUserReserveBiz.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
biz
;
import
com.github.wxiaoqi.security.common.biz.BaseBiz
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.util.process.ResultCode
;
import
com.github.wxiaoqi.security.common.vo.PageDataVO
;
import
com.xxfc.platform.vehicle.entity.*
;
import
com.xxfc.platform.vehicle.mapper.VehicleUserReserveMapper
;
import
com.xxfc.platform.vehicle.pojo.dto.VehicleUserReserveDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.VehicleUserReserveVo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
@Service
@Slf4j
public
class
VehicleUserReserveBiz
extends
BaseBiz
<
VehicleUserReserveMapper
,
VehicleUserReserve
>
{
//获取列表
public
ObjectRestResponse
getList
(
VehicleUserReserveDTO
reserveDTO
){
Integer
page
=
1
;
Integer
limit
=
10
;
if
(
reserveDTO
.
getPage
()!=
null
&&
reserveDTO
.
getPage
()>
0
){
page
=
reserveDTO
.
getPage
();
}
if
(
reserveDTO
.
getLimit
()!=
null
&&
reserveDTO
.
getLimit
()>
0
){
limit
=
reserveDTO
.
getLimit
();
}
return
ObjectRestResponse
.
succ
(
PageDataVO
.
pageInfo
(
page
,
limit
,
()->
mapper
.
getList
(
reserveDTO
)));
}
//新增预定
public
ObjectRestResponse
updReserve
(
VehicleUserReserveVo
reserveVo
){
if
(
reserveVo
==
null
){
return
ObjectRestResponse
.
createFailedResult
(
ResultCode
.
NULL_CODE
,
"参数不能为空"
);
}
VehicleUserReserve
userReserve
=
new
VehicleUserReserveVo
();
BeanUtils
.
copyProperties
(
reserveVo
,
userReserve
);
insertSelective
(
userReserve
);
return
ObjectRestResponse
.
succ
();
}
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/mapper/VehicleUserReserveMapper.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
mapper
;
import
com.xxfc.platform.vehicle.entity.VehicleUserReserve
;
import
com.xxfc.platform.vehicle.pojo.dto.VehicleUserReserveDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.VehicleUserReserveVo
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
public
interface
VehicleUserReserveMapper
extends
Mapper
<
VehicleUserReserve
>
{
//获取预约列表
List
<
VehicleUserReserveVo
>
getList
(
VehicleUserReserveDTO
reserveDTO
);
}
\ No newline at end of file
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/VehicleUserReserveController.java
0 → 100644
View file @
f5c290d6
package
com
.
xxfc
.
platform
.
vehicle
.
rest
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.xxfc.platform.vehicle.biz.VehicleUserReserveBiz
;
import
com.xxfc.platform.vehicle.common.BaseController
;
import
com.xxfc.platform.vehicle.pojo.dto.VehicleUserReserveDTO
;
import
com.xxfc.platform.vehicle.pojo.vo.VehicleUserReserveVo
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
@RestController
@IgnoreClientToken
@RequestMapping
(
"reserve"
)
public
class
VehicleUserReserveController
extends
BaseController
<
VehicleUserReserveBiz
>
{
@ApiOperation
(
"查询预定列表"
)
@RequestMapping
(
value
=
"/list"
,
method
=
RequestMethod
.
GET
)
public
ObjectRestResponse
getList
(
VehicleUserReserveDTO
reserveDTO
){
return
baseBiz
.
getList
(
reserveDTO
);
}
@ApiOperation
(
"添加预定信息"
)
@IgnoreUserToken
@RequestMapping
(
value
=
"/app/unauth/updReserve"
,
method
=
RequestMethod
.
POST
)
public
ObjectRestResponse
updReserve
(
@RequestBody
VehicleUserReserveVo
reserveVo
){
return
baseBiz
.
updReserve
(
reserveVo
);
}
}
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleUserReserveMapper.xml
0 → 100644
View file @
f5c290d6
<?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.vehicle.mapper.VehicleUserReserveMapper"
>
<select
id=
"getList"
parameterType=
"com.xxfc.platform.vehicle.pojo.dto.VehicleUserReserveDTO"
resultType=
"com.xxfc.platform.vehicle.pojo.vo.VehicleUserReserveVo"
>
SELECT
r.id,
r.user_id as userId,
r.mode_id as modeId,
r.`name`,
r.phone,
r.start_time as startTime,
r.end_time as endTime,
r.addr_province as addrProvince,
r.province_name as provinceName,
r.addr_city as addrCity,
r.city_name as cityName,
r.company_id as companyId,
r.crt_time as crtTime,
r.upd_time as updTime,
r.`status`,
m.`name` as modelName
FROM vehicle_user_reserve r
LEFT JOIN vehicle_model m ON r.mode_id=m.id
<where>
r.is_del=0
</where>
order by r.upd_time desc
</select>
</mapper>
\ No newline at end of file
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