Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-backend
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AutogeneralShanghai
yd-backend
Commits
a633d8f4
Commit
a633d8f4
authored
Jul 20, 2020
by
Water Wang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
optimize
parent
75833914
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
339 additions
and
0 deletions
+339
-0
yd-api/src/main/java/com/yd/api/agms/AgmsController.java
+28
-0
yd-api/src/main/java/com/yd/api/agms/service/AgmsDashboardService.java
+14
-0
yd-api/src/main/java/com/yd/api/agms/service/impl/AgmsDashboardServiceImpl.java
+38
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerInfo.java
+40
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerRequestVO.java
+13
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerResponseVO.java
+26
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesInfo.java
+58
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesRequestVO.java
+31
-0
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesResponseVO.java
+26
-0
yd-api/src/main/java/com/yd/dal/mapper/agms/AgmsDashboardMapper.java
+2
-0
yd-api/src/main/java/com/yd/dal/service/agms/AgmsDashboardDALService.java
+3
-0
yd-api/src/main/java/com/yd/dal/service/agms/impl/AgmsDashboardDALServiceImpl.java
+6
-0
yd-api/src/main/resources/mapper/agms/AgmsDashboardMapper.xml
+54
-0
No files found.
yd-api/src/main/java/com/yd/api/agms/AgmsController.java
View file @
a633d8f4
...
...
@@ -78,4 +78,32 @@ public class AgmsController {
result
.
setData
(
responseVO
);
return
result
;
}
/**
* AGMS -- Dashboard查询 销售统计查询
* @param requestVO 请求数据
* @return 响应数据
*/
@RequestMapping
(
"/statisticsSales"
)
public
Object
statisticsSales
(
@RequestBody
StatisticsSalesRequestVO
requestVO
){
JsonResult
result
=
new
JsonResult
();
StatisticsSalesResponseVO
responseVO
=
agmsDashboardService
.
statisticsSales
(
requestVO
);
result
.
addResult
(
responseVO
);
result
.
setData
(
responseVO
);
return
result
;
}
/**
* AGMS -- Dashboard查询 经纪人统计查询
* @param requestVO 请求数据
* @return 响应数据
*/
@RequestMapping
(
"/statisticsPractitioner"
)
public
Object
statisticsPractitioner
(
@RequestBody
StatisticsPractitionerRequestVO
requestVO
){
JsonResult
result
=
new
JsonResult
();
StatisticsPractitionerResponseVO
responseVO
=
agmsDashboardService
.
statisticsPractitioner
(
requestVO
);
result
.
addResult
(
responseVO
);
result
.
setData
(
responseVO
);
return
result
;
}
}
yd-api/src/main/java/com/yd/api/agms/service/AgmsDashboardService.java
View file @
a633d8f4
...
...
@@ -23,4 +23,18 @@ public interface AgmsDashboardService {
* @return 响应数据
*/
StatisticsForecastTotalResponseVO
statisticsForecastTotal
(
StatisticsForecastTotalRequestVO
requestVO
);
/**
* AGMS -- Dashboard查询 销售统计查询
* @param requestVO 请求数据
* @return 响应数据
*/
StatisticsSalesResponseVO
statisticsSales
(
StatisticsSalesRequestVO
requestVO
);
/**
* AGMS -- Dashboard查询 经纪人统计查询
* @param requestVO 请求数据
* @return 响应数据
*/
StatisticsPractitionerResponseVO
statisticsPractitioner
(
StatisticsPractitionerRequestVO
requestVO
);
}
yd-api/src/main/java/com/yd/api/agms/service/impl/AgmsDashboardServiceImpl.java
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
service
.
impl
;
import
com.google.common.base.Strings
;
import
com.yd.api.agms.service.AgmsDashboardService
;
import
com.yd.api.agms.vo.dashboard.*
;
import
com.yd.api.result.CommonResult
;
...
...
@@ -12,6 +13,7 @@ import com.yd.util.config.ZHBErrorConfig;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Service
(
"agmsDashboardService"
)
...
...
@@ -84,4 +86,40 @@ public class AgmsDashboardServiceImpl implements AgmsDashboardService {
responseVO
.
setCommonResult
(
new
CommonResult
(
true
,
ZHBErrorConfig
.
getErrorInfo
(
"800000"
)));
return
responseVO
;
}
@Override
public
StatisticsSalesResponseVO
statisticsSales
(
StatisticsSalesRequestVO
requestVO
)
{
StatisticsSalesResponseVO
responseVO
=
new
StatisticsSalesResponseVO
();
String
category
=
requestVO
.
getCategory
();
String
time
=
requestVO
.
getTime
();
String
type
=
requestVO
.
getType
();
category
=
Strings
.
isNullOrEmpty
(
category
)
?
"PC"
:
category
;
time
=
Strings
.
isNullOrEmpty
(
time
)
?
"m"
:
time
;
type
=
Strings
.
isNullOrEmpty
(
type
)
?
"b"
:
type
;
List
<
StatisticsSalesInfo
>
statisticsSalesInfos
;
if
(
"life"
.
equals
(
category
)){
statisticsSalesInfos
=
agmsDashboardDALService
.
statisticsSales
(
type
,
time
);
}
else
{
statisticsSalesInfos
=
agmsDashboardDALService
.
statisticsSales
(
type
,
time
);
}
if
(
statisticsSalesInfos
!=
null
&&
statisticsSalesInfos
.
size
()
>
0
){
Double
fyp
;
Integer
pieces
;
for
(
StatisticsSalesInfo
item
:
statisticsSalesInfos
){
fyp
=
item
.
getFyp
();
pieces
=
item
.
getPieces
();
if
(
pieces
!=
null
&&
pieces
!=
0
){
item
.
setUnitPremium
(
BigDecimal
.
valueOf
(
fyp
/
pieces
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
).
doubleValue
());
}
}
}
responseVO
.
setStatisticsSalesInfos
(
statisticsSalesInfos
);
responseVO
.
setCommonResult
(
new
CommonResult
(
true
,
ZHBErrorConfig
.
getErrorInfo
(
"800000"
)));
return
responseVO
;
}
@Override
public
StatisticsPractitionerResponseVO
statisticsPractitioner
(
StatisticsPractitionerRequestVO
requestVO
)
{
return
null
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerInfo.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
public
class
StatisticsPractitionerInfo
{
private
String
typeName
;
private
Integer
amount
;
private
Double
realRate
;
private
Integer
mdrt
;
public
String
getTypeName
()
{
return
typeName
;
}
public
void
setTypeName
(
String
typeName
)
{
this
.
typeName
=
typeName
;
}
public
Integer
getAmount
()
{
return
amount
;
}
public
void
setAmount
(
Integer
amount
)
{
this
.
amount
=
amount
;
}
public
Double
getRealRate
()
{
return
realRate
;
}
public
void
setRealRate
(
Double
realRate
)
{
this
.
realRate
=
realRate
;
}
public
Integer
getMdrt
()
{
return
mdrt
;
}
public
void
setMdrt
(
Integer
mdrt
)
{
this
.
mdrt
=
mdrt
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerRequestVO.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
public
class
StatisticsPractitionerRequestVO
{
private
String
type
;
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsPractitionerResponseVO.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
import
com.yd.api.result.CommonResult
;
import
java.util.List
;
public
class
StatisticsPractitionerResponseVO
{
private
List
<
StatisticsPractitionerInfo
>
statisticsPractitionerInfos
;
private
CommonResult
commonResult
;
public
List
<
StatisticsPractitionerInfo
>
getStatisticsPractitionerInfos
()
{
return
statisticsPractitionerInfos
;
}
public
void
setStatisticsPractitionerInfos
(
List
<
StatisticsPractitionerInfo
>
statisticsPractitionerInfos
)
{
this
.
statisticsPractitionerInfos
=
statisticsPractitionerInfos
;
}
public
CommonResult
getCommonResult
()
{
return
commonResult
;
}
public
void
setCommonResult
(
CommonResult
commonResult
)
{
this
.
commonResult
=
commonResult
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesInfo.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
public
class
StatisticsSalesInfo
{
private
String
typeName
;
private
Double
fyp
;
private
Double
fyc
;
private
Double
api
;
private
Integer
pieces
;
private
Double
unitPremium
;
public
String
getTypeName
()
{
return
typeName
;
}
public
void
setTypeName
(
String
typeName
)
{
this
.
typeName
=
typeName
;
}
public
Double
getFyp
()
{
return
fyp
;
}
public
void
setFyp
(
Double
fyp
)
{
this
.
fyp
=
fyp
;
}
public
Double
getFyc
()
{
return
fyc
;
}
public
void
setFyc
(
Double
fyc
)
{
this
.
fyc
=
fyc
;
}
public
Double
getApi
()
{
return
api
;
}
public
void
setApi
(
Double
api
)
{
this
.
api
=
api
;
}
public
Integer
getPieces
()
{
return
pieces
;
}
public
void
setPieces
(
Integer
pieces
)
{
this
.
pieces
=
pieces
;
}
public
Double
getUnitPremium
()
{
return
unitPremium
;
}
public
void
setUnitPremium
(
Double
unitPremium
)
{
this
.
unitPremium
=
unitPremium
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesRequestVO.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
public
class
StatisticsSalesRequestVO
{
private
String
type
;
// d:整体,t:团体
private
String
time
;
//d:天,w:周,m:月,q:季,y:年
private
String
category
;
//life:寿险,pc:财险
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getTime
()
{
return
time
;
}
public
void
setTime
(
String
time
)
{
this
.
time
=
time
;
}
public
String
getCategory
()
{
return
category
;
}
public
void
setCategory
(
String
category
)
{
this
.
category
=
category
;
}
}
yd-api/src/main/java/com/yd/api/agms/vo/dashboard/StatisticsSalesResponseVO.java
0 → 100644
View file @
a633d8f4
package
com
.
yd
.
api
.
agms
.
vo
.
dashboard
;
import
com.yd.api.result.CommonResult
;
import
java.util.List
;
public
class
StatisticsSalesResponseVO
{
private
List
<
StatisticsSalesInfo
>
statisticsSalesInfos
;
private
CommonResult
commonResult
;
public
List
<
StatisticsSalesInfo
>
getStatisticsSalesInfos
()
{
return
statisticsSalesInfos
;
}
public
void
setStatisticsSalesInfos
(
List
<
StatisticsSalesInfo
>
statisticsSalesInfos
)
{
this
.
statisticsSalesInfos
=
statisticsSalesInfos
;
}
public
CommonResult
getCommonResult
()
{
return
commonResult
;
}
public
void
setCommonResult
(
CommonResult
commonResult
)
{
this
.
commonResult
=
commonResult
;
}
}
yd-api/src/main/java/com/yd/dal/mapper/agms/AgmsDashboardMapper.java
View file @
a633d8f4
package
com
.
yd
.
dal
.
mapper
.
agms
;
import
com.yd.api.agms.vo.dashboard.StatisticsSalesInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsOpportunityInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsPEPInfo
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -12,4 +13,5 @@ public interface AgmsDashboardMapper {
List
<
StatisticsOpportunityInfo
>
statisticsOpportunity
(
@Param
(
"type"
)
String
type
,
@Param
(
"time"
)
String
time
,
@Param
(
"dropOptionId"
)
Long
dropOptionId
);
List
<
StatisticsSalesInfo
>
statisticsSales
(
@Param
(
"type"
)
String
type
,
@Param
(
"time"
)
String
time
);
}
yd-api/src/main/java/com/yd/dal/service/agms/AgmsDashboardDALService.java
View file @
a633d8f4
package
com
.
yd
.
dal
.
service
.
agms
;
import
com.yd.api.agms.vo.dashboard.StatisticsSalesInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsOpportunityInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsPEPInfo
;
...
...
@@ -9,4 +10,6 @@ public interface AgmsDashboardDALService {
List
<
StatisticsPEPInfo
>
statisticsPEP
(
String
type
,
Long
dropOptionId
);
List
<
StatisticsOpportunityInfo
>
statisticsOpportunity
(
String
type
,
String
time
,
Long
id
);
List
<
StatisticsSalesInfo
>
statisticsSales
(
String
type
,
String
time
);
}
yd-api/src/main/java/com/yd/dal/service/agms/impl/AgmsDashboardDALServiceImpl.java
View file @
a633d8f4
package
com
.
yd
.
dal
.
service
.
agms
.
impl
;
import
com.yd.api.agms.vo.dashboard.StatisticsSalesInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsOpportunityInfo
;
import
com.yd.dal.entity.agms.dashboard.StatisticsPEPInfo
;
import
com.yd.dal.mapper.agms.AgmsDashboardMapper
;
...
...
@@ -24,4 +25,9 @@ public class AgmsDashboardDALServiceImpl implements AgmsDashboardDALService {
public
List
<
StatisticsOpportunityInfo
>
statisticsOpportunity
(
String
type
,
String
time
,
Long
dropOptionId
)
{
return
agmsDashboardMapper
.
statisticsOpportunity
(
type
,
time
,
dropOptionId
);
}
@Override
public
List
<
StatisticsSalesInfo
>
statisticsSales
(
String
type
,
String
time
)
{
return
agmsDashboardMapper
.
statisticsSales
(
type
,
time
);
}
}
yd-api/src/main/resources/mapper/agms/AgmsDashboardMapper.xml
View file @
a633d8f4
...
...
@@ -88,6 +88,59 @@ where not EXISTS(
</choose>
order by predictFYC desc ,predictFYP desc ,pieces desc ,opportunityNum desc;
</select>
<select
id=
"statisticsSales"
resultType=
"com.yd.api.agms.vo.dashboard.StatisticsSalesInfo"
>
select
<choose>
<when
test=
"type.equalsIgnoreCase('B')"
>
b.branch_name as typeName,
</when>
<otherwise>
s.name as typeName,
</otherwise>
</choose>
ifnull(sum(cf.order_price),0) as fyp,
ifnull(sum(cf.fyc_amount),0) as fyc,
ifnull(count(cf.order_id),0) as pieces
from ag_acl_practitioner p left join ag_acl_customer_fortune cf on p.customer_id = cf.customer_id and cf.grade_commission_rate != 5
left join ag_po_order o on cf.order_id = o.id and o.status = 3
left join ag_acl_insurer_branch b on b.id = p.insurer_branch_id
left join ag_acl_practitioner_subordinate_system s on s.id = p.subordinate_system_id
where
<choose>
<when
test=
"type.equalsIgnoreCase('B')"
>
p.insurer_branch_id is not null
</when>
<otherwise>
p.subordinate_system_id is not null
</otherwise>
</choose>
<choose>
<when
test=
"time.equalsIgnoreCase('D')"
>
and TO_DAYS(o.order_date) = TO_DAYS(now())
</when>
<when
test=
"time.equalsIgnoreCase('W')"
>
and YEARWEEK(DATE_FORMAT(o.order_date,'%Y-%m-%d')) = YEARWEEK(NOW())
</when>
<when
test=
"time.equalsIgnoreCase('M')"
>
and DATE_FORMAT(o.order_date, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
</when>
<when
test=
"time.equalsIgnoreCase('Q')"
>
and QUARTER(o.order_date) = QUARTER(NOW()) AND year(o.order_date)=year(now())
</when>
<otherwise>
and YEAR(o.order_date) = YEAR(now())
</otherwise>
</choose>
<choose>
<when
test=
"type.equalsIgnoreCase('B')"
>
group by p.insurer_branch_id
</when>
<otherwise>
group by p.subordinate_system_id
</otherwise>
</choose>
order by fyc 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