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
75c22dd8
Commit
75c22dd8
authored
Nov 28, 2019
by
hanfeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
总业绩统计
parent
6369f14f
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
302 additions
and
35 deletions
+302
-35
Achievement.java
...c/main/java/com/xxfc/platform/order/pojo/Achievement.java
+32
-7
ReturnOrderAmount.java
.../java/com/xxfc/platform/order/pojo/ReturnOrderAmount.java
+27
-3
TotalPerformanceBiz.java
...java/com/xxfc/platform/order/biz/TotalPerformanceBiz.java
+214
-3
TotalPerformanceStatementController.java
.../rest/background/TotalPerformanceStatementController.java
+29
-22
No files found.
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/Achievement.java
View file @
75c22dd8
...
@@ -5,13 +5,29 @@ import io.swagger.annotations.ApiModelProperty;
...
@@ -5,13 +5,29 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
javax.persistence.Column
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
@Data
@Data
@ApiModel
(
"订单业绩明细表"
)
@ApiModel
(
"订单业绩明细表"
)
public
class
Achievement
{
public
class
Achievement
implements
Serializable
{
private
static
final
Map
<
Integer
,
String
>
orderTypeMap
=
new
HashMap
<>();
private
static
final
Map
<
Integer
,
String
>
payWayMap
=
new
HashMap
<>();
static
{
orderTypeMap
.
put
(
1
,
"租车"
);
orderTypeMap
.
put
(
2
,
"旅游"
);
orderTypeMap
.
put
(
3
,
"会员"
);
payWayMap
.
put
(
null
,
"微信"
);
payWayMap
.
put
(
1
,
"微信支付"
);
payWayMap
.
put
(
2
,
"支付宝支付"
);
payWayMap
.
put
(
3
,
"银联支付"
);
}
@ApiModelProperty
(
value
=
"下单用户真实姓名"
)
@ApiModelProperty
(
value
=
"下单用户真实姓名"
)
private
String
realname
;
private
String
realname
;
@ApiModelProperty
(
value
=
"用户手机号"
)
@ApiModelProperty
(
value
=
"用户手机号"
)
...
@@ -27,8 +43,8 @@ public class Achievement {
...
@@ -27,8 +43,8 @@ public class Achievement {
@ApiModelProperty
(
value
=
"订单所属公司名"
)
@ApiModelProperty
(
value
=
"订单所属公司名"
)
private
String
companyName
;
private
String
companyName
;
@ApiModelProperty
(
value
=
"优惠价格"
)
@ApiModelProperty
(
value
=
"优惠价格"
)
private
BigDecimal
favorablePrice
;
private
BigDecimal
favorablePrice
=
BigDecimal
.
ZERO
;
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
@ApiModelProperty
(
value
=
"创建时间"
,
hidden
=
true
)
@Column
(
name
=
"crt_time"
)
@Column
(
name
=
"crt_time"
)
private
String
crtTime
;
private
String
crtTime
;
@ApiModelProperty
(
value
=
"订单号"
)
@ApiModelProperty
(
value
=
"订单号"
)
...
@@ -37,15 +53,24 @@ public class Achievement {
...
@@ -37,15 +53,24 @@ public class Achievement {
private
Integer
type
;
private
Integer
type
;
@Column
(
name
=
"order_amount"
)
@Column
(
name
=
"order_amount"
)
@ApiModelProperty
(
"订单总额"
)
@ApiModelProperty
(
"订单总额"
)
private
BigDecimal
orderAmount
=
BigDecimal
.
ZERO
;
private
BigDecimal
orderAmount
=
BigDecimal
.
ZERO
;
@ApiModelProperty
(
value
=
"实际订单额"
)
@ApiModelProperty
(
value
=
"实际订单额"
)
@Column
(
name
=
"real_amount"
)
@Column
(
name
=
"real_amount"
)
private
BigDecimal
realAmount
=
BigDecimal
.
ZERO
;
private
BigDecimal
realAmount
=
BigDecimal
.
ZERO
;
@Column
(
name
=
"pay_way"
)
@Column
(
name
=
"pay_way"
)
@ApiModelProperty
(
value
=
"支付方式"
)
@ApiModelProperty
(
value
=
"支付方式"
)
private
Integer
payWay
;
private
Integer
payWay
;
public
void
setCrtTime
(
Date
crtTime
)
{
public
void
setCrtTime
(
Date
crtTime
)
{
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
this
.
crtTime
=
dateFormat
.
format
(
crtTime
);
this
.
crtTime
=
dateFormat
.
format
(
crtTime
);
}
public
String
getType
()
{
return
orderTypeMap
.
get
(
type
);
}
public
String
getPayWay
()
{
return
payWayMap
.
get
(
payWay
);
}
}
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/pojo/ReturnOrderAmount.java
View file @
75c22dd8
...
@@ -9,12 +9,25 @@ import org.springframework.util.StringUtils;
...
@@ -9,12 +9,25 @@ import org.springframework.util.StringUtils;
import
javax.persistence.Column
;
import
javax.persistence.Column
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
@Data
@Data
public
class
ReturnOrderAmount
implements
Serializable
{
public
class
ReturnOrderAmount
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8445943548965154778L
;
private
static
final
long
serialVersionUID
=
-
8445943548965154778L
;
private
static
final
Map
<
Integer
,
String
>
orderTypeMap
=
new
HashMap
<>();
static
{
orderTypeMap
.
put
(
1
,
"租车"
);
orderTypeMap
.
put
(
2
,
"旅游"
);
orderTypeMap
.
put
(
3
,
"会员"
);
}
@ApiModelProperty
(
value
=
"时间"
)
@ApiModelProperty
(
value
=
"时间"
)
private
Stri
ng
time
;
private
Lo
ng
time
;
@ApiModelProperty
(
value
=
"订单号"
)
@ApiModelProperty
(
value
=
"订单号"
)
private
String
no
;
private
String
no
;
@ApiModelProperty
(
value
=
"订单类型"
)
@ApiModelProperty
(
value
=
"订单类型"
)
...
@@ -28,11 +41,22 @@ public class ReturnOrderAmount implements Serializable {
...
@@ -28,11 +41,22 @@ public class ReturnOrderAmount implements Serializable {
@ApiModelProperty
(
value
=
"退款说明"
)
@ApiModelProperty
(
value
=
"退款说明"
)
private
String
refundInstruction
;
private
String
refundInstruction
;
@ApiModelProperty
(
value
=
"退款明细"
)
@ApiModelProperty
(
value
=
"退款明细"
)
private
BigDecimal
refundAmount
=
BigDecimal
.
ZERO
;
private
BigDecimal
refundAmount
=
BigDecimal
.
ZERO
;
@ApiModelProperty
(
"退还类型"
)
@ApiModelProperty
(
"退还类型"
)
@Column
(
name
=
"account_type"
)
@Column
(
name
=
"account_type"
)
private
Integer
accountType
;
private
Integer
accountType
;
public
OrderAccountDetail
getAccountDetail
()
{
public
OrderAccountDetail
getAccountDetail
()
{
return
StringUtils
.
hasText
(
accountDetail
)?
JSON
.
parseObject
(
accountDetail
,
OrderAccountDetail
.
class
):
new
OrderAccountDetail
();
return
StringUtils
.
hasText
(
accountDetail
)
?
JSON
.
parseObject
(
accountDetail
,
OrderAccountDetail
.
class
)
:
new
OrderAccountDetail
();
}
public
String
getType
()
{
return
orderTypeMap
.
get
(
type
);
}
public
String
getTime
()
{
Date
date
=
new
Date
(
this
.
time
);
return
new
SimpleDateFormat
(
"yyyy-MM-dd"
).
format
(
date
);
}
}
}
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/TotalPerformanceBiz.java
View file @
75c22dd8
This diff is collapsed.
Click to expand it.
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/background/TotalPerformanceStatementController.java
View file @
75c22dd8
...
@@ -5,10 +5,10 @@ import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
...
@@ -5,10 +5,10 @@ import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken
;
import
com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken
;
import
com.github.wxiaoqi.security.auth.client.config.UserAuthConfig
;
import
com.github.wxiaoqi.security.auth.client.config.UserAuthConfig
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.msg.ObjectRestResponse
;
import
com.github.wxiaoqi.security.common.msg.auth.PageResult
;
import
com.github.wxiaoqi.security.common.msg.auth.PageResult
;
import
com.github.wxiaoqi.security.common.rest.CommonBaseController
;
import
com.github.wxiaoqi.security.common.rest.CommonBaseController
;
import
com.google.common.collect.Lists
;
import
com.xxfc.platform.order.biz.TotalPerformanceBiz
;
import
com.xxfc.platform.order.biz.TotalPerformanceBiz
;
import
com.xxfc.platform.order.pojo.QueryCriteria
;
import
com.xxfc.platform.order.pojo.QueryCriteria
;
import
com.xxfc.platform.order.contant.enumerate.BookkeepingTypeEnum
;
import
com.xxfc.platform.order.contant.enumerate.BookkeepingTypeEnum
;
...
@@ -24,7 +24,12 @@ import org.springframework.web.bind.annotation.RequestBody;
...
@@ -24,7 +24,12 @@ import org.springframework.web.bind.annotation.RequestBody;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -75,28 +80,30 @@ public class TotalPerformanceStatementController extends CommonBaseController {
...
@@ -75,28 +80,30 @@ public class TotalPerformanceStatementController extends CommonBaseController {
}
}
@PostMapping
(
"/excel"
)
@PostMapping
(
"/excel"
)
public
ObjectRestResponse
statisticalDownload
(
@RequestBody
QueryCriteria
queryCriteria
)
throws
Exception
{
public
void
exportTotalPerformance
(
@RequestBody
QueryCriteria
queryCriteria
,
HttpServletResponse
response
)
throws
Exception
{
UserDTO
userDTO
=
userFeign
.
userinfoByToken
(
userAuthConfig
.
getToken
(
request
)).
getData
();
try
{
String
name
=
DateTimeFormatter
.
ofPattern
(
"YYYYMMddHHmmss"
).
format
(
LocalDateTime
.
now
());
//获取用户权限
response
.
setContentType
(
"application/vnd.ms-excel;charset=utf-8"
);
List
<
Integer
>
Jurisdiction
=
null
;
if
(
BookkeepingTypeEnum
.
ENTER
.
getCode
().
equals
(
queryCriteria
.
getType
()))
{
//是否有查询所有数据的权限
String
filename
=
String
.
format
(
"%s-总业绩-入账表.xlsx"
,
name
);
if
(!
HIGHEST_AUTHORITY
.
equals
(
userDTO
.
getDataAll
()))
{
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
new
String
(
filename
.
getBytes
(),
"iso8859-1"
));
List
<
BranchCompany
>
branchCompanies
=
vehicleFeign
.
companyAll
(
userDTO
.
getDataAll
(),
userDTO
.
getDataCompany
(),
userDTO
.
getDataZone
());
ServletOutputStream
outputStream
=
response
.
getOutputStream
();
Jurisdiction
=
branchCompanies
.
parallelStream
().
map
(
BranchCompany:
:
getId
).
collect
(
Collectors
.
toList
());
totalPerformanceBiz
.
exportEntry
(
queryCriteria
,
name
,
outputStream
);
}
else
if
(
BookkeepingTypeEnum
.
OUT
.
getCode
().
equals
(
queryCriteria
.
getType
())){
String
filename
=
String
.
format
(
"%s-总业绩-出账表.xlsx"
,
name
);
response
.
setHeader
(
"Content-Disposition"
,
"attachment;filename="
+
new
String
(
filename
.
getBytes
(),
"iso8859-1"
));
ServletOutputStream
outputStream
=
response
.
getOutputStream
();
totalPerformanceBiz
.
exportAccount
(
queryCriteria
,
name
,
outputStream
);
}
else
{
throw
new
BaseException
(
"无相关数据"
);
}
response
.
setCharacterEncoding
(
"UTF-8"
);
}
catch
(
IOException
e
)
{
throw
new
BaseException
(
"导入数据失败"
);
}
}
queryCriteria
.
setJurisdiction
(
Jurisdiction
);
if
(
BookkeepingTypeEnum
.
ENTER
.
getCode
().
equals
(
queryCriteria
.
getType
()))
{
TotalOrderRevenue
totalOrderRevenue
=
totalPerformanceBiz
.
entryStatisticalData
(
queryCriteria
);
return
ObjectRestResponse
.
succ
(
totalOrderRevenue
);
}
else
if
(
BookkeepingTypeEnum
.
OUT
.
getCode
().
equals
(
queryCriteria
.
getType
())){
List
<
ReturnOrderAmount
>
returnOrderAmounts
=
totalPerformanceBiz
.
outStatisticalData
(
queryCriteria
);
return
ObjectRestResponse
.
succ
(
PageResult
.
nowPageResult
(
queryCriteria
.
getPage
(),
queryCriteria
.
getLimit
(),
returnOrderAmounts
));
}
return
ObjectRestResponse
.
succ
();
}
}
}
}
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