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
3e16d24c
Commit
3e16d24c
authored
May 21, 2020
by
yao.xiao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
暂存
parent
abe44b0f
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
163 additions
and
14 deletions
+163
-14
yd-api/src/main/java/com/yd/api/practitioner/PractitionerController.java
+44
-13
yd-api/src/main/java/com/yd/api/practitioner/service/PractitionerService.java
+7
-0
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerServiceImpl.java
+27
-1
yd-api/src/main/java/com/yd/api/practitioner/vo/salestarget/TeamActionsAverageQueryRequestVO.java
+8
-0
yd-api/src/main/java/com/yd/api/practitioner/vo/salestarget/TeamActionsAverageQueryResponseVO.java
+13
-0
yd-api/src/main/java/com/yd/dal/mapper/customer/AclPractitionerMapper.java
+3
-0
yd-api/src/main/java/com/yd/dal/mapper/marketing/MktLeadsAssignedTrackMapper.java
+3
-0
yd-api/src/main/java/com/yd/dal/service/customer/AclPractitionerDALService.java
+7
-0
yd-api/src/main/java/com/yd/dal/service/customer/impl/AclPractitionerDALServiceImpl.java
+5
-0
yd-api/src/main/java/com/yd/dal/service/marketing/Impl/MktLeadsAssignedTrackDALServiceImpl.java
+5
-0
yd-api/src/main/java/com/yd/dal/service/marketing/MktLeadsAssignedTrackDALService.java
+2
-0
yd-api/src/main/resources/mapper/customer/AclPractitionerMapper.xml
+10
-0
yd-api/src/main/resources/mapper/marketing/MktLeadsAssignedTrackMapper.xml
+29
-0
No files found.
yd-api/src/main/java/com/yd/api/practitioner/PractitionerController.java
View file @
3e16d24c
...
...
@@ -55,7 +55,7 @@ public class PractitionerController {
}
/**
* 查询经纪人的个人设置
*
经纪人-
查询经纪人的个人设置
* @param requestVO 请求数据
* @return responseVO
*/
...
...
@@ -69,7 +69,7 @@ public class PractitionerController {
}
/**
* 保存经纪人的个人设置
*
经纪人-
保存经纪人的个人设置
* @param requestVO 请求数据
* @return responseVO
*/
...
...
@@ -83,7 +83,7 @@ public class PractitionerController {
}
/**
* 删除经纪人照片
*
经纪人-
删除经纪人照片
*/
@RequestMapping
(
"/imgDelete"
)
public
Object
imgDelete
(
@RequestBody
ImgDeleteRequestVO
requestVO
){
...
...
@@ -94,6 +94,11 @@ public class PractitionerController {
return
result
;
}
/**
* 微信-上传多媒体文件
* @param requestVO
* @return
*/
@RequestMapping
(
"/mediaGet"
)
public
Object
mediaGet
(
@RequestBody
MediaGetReqVO
requestVO
){
JsonResult
result
=
new
JsonResult
();
...
...
@@ -104,7 +109,7 @@ public class PractitionerController {
}
/***
* 经纪人查询自己的商机
* 经纪人
-经纪人
查询自己的商机
* @param requestVO
* @return
*/
...
...
@@ -131,7 +136,7 @@ public class PractitionerController {
}
/***
* 经纪人查询自己的商机详情查询
* 经纪人
-经纪人
查询自己的商机详情查询
* @param requestVO
* @return
*/
...
...
@@ -185,8 +190,10 @@ public class PractitionerController {
return
result
;
}
/***
* 修改商机基本信息
/**
* 经纪人-修改商机基本信息
* @param requestVO
* @return
*/
@RequestMapping
(
"/ownOpportunityBasicInformationSave"
)
public
Object
ownOpportunityBasicInformationSave
(
@RequestBody
OwnOpportunityBasicInformationSaveRequestVO
requestVO
){
...
...
@@ -197,8 +204,10 @@ public class PractitionerController {
return
result
;
}
/***
* 保存商机跟进,修改商机基本信息
/**
* 经纪人-保存商机跟进,修改商机基本信息
* @param requestVO
* @return
*/
@RequestMapping
(
"/ownOpportunityRecordSave"
)
public
Object
ownOpportunityRecordSave
(
@RequestBody
OwnOpportunityRecordSaveRequestVO
requestVO
){
...
...
@@ -210,7 +219,9 @@ public class PractitionerController {
}
/**
* ydLife查询此经纪人总分数 按年月周日 分别统计 新增商机个数 达成率
* 经纪人-ydLife查询此经纪人总分数 按年月周日 分别统计 新增商机个数 达成率
* @param requestVO
* @return
*/
@RequestMapping
(
"/opportunityStatistics"
)
public
Object
OpportunityStatistics
(
@RequestBody
OpportunityStatisticsRequestVO
requestVO
){
...
...
@@ -222,7 +233,9 @@ public class PractitionerController {
}
/**
* 保存销售目标
* 经纪人-保存销售目标
* @param requestVO
* @return
*/
@RequestMapping
(
"/salesTargetSave"
)
public
Object
salesTargetSave
(
@RequestBody
SalesTargetSaveRequestVO
requestVO
){
...
...
@@ -234,7 +247,9 @@ public class PractitionerController {
}
/**
* 查询销售目标
* 经纪人-查询销售目标
* @param requestVO
* @return
*/
@RequestMapping
(
"/salesTargetQuery"
)
public
Object
salesTargetQuery
(
@RequestBody
SalesTargetQueryRequestVO
requestVO
){
...
...
@@ -246,7 +261,9 @@ public class PractitionerController {
}
/**
* 保存月均目标
* 经纪人-保存月均目标
* @param requestVO
* @return
*/
@RequestMapping
(
"/salesTargetMonthSave"
)
public
Object
salesTargetMonthSave
(
@RequestBody
SalesTargetMonthSaveRequestVO
requestVO
){
...
...
@@ -256,4 +273,18 @@ public class PractitionerController {
result
.
setData
(
responseVO
);
return
result
;
}
/**
* 团队长-查看组员得分均值
* @param requestVO
* @return
*/
@RequestMapping
(
"/teamActionsAverageQuery"
)
public
Object
teamActionsAverageQuery
(
@RequestBody
TeamActionsAverageQueryRequestVO
requestVO
){
JsonResult
result
=
new
JsonResult
();
TeamActionsAverageQueryResponseVO
responseVO
=
practitionerService
.
teamScoreAverageQuery
(
requestVO
);
result
.
addResult
(
responseVO
);
result
.
setData
(
responseVO
);
return
result
;
}
}
yd-api/src/main/java/com/yd/api/practitioner/service/PractitionerService.java
View file @
3e16d24c
...
...
@@ -138,4 +138,11 @@ public interface PractitionerService {
* @return
*/
SalesTargetMonthSaveResponseVO
salesTargetMonthSave
(
SalesTargetMonthSaveRequestVO
requestVO
);
/**
* 团队长-查看组员得分均值
* @param requestVO
* @return
*/
TeamActionsAverageQueryResponseVO
teamScoreAverageQuery
(
TeamActionsAverageQueryRequestVO
requestVO
);
}
yd-api/src/main/java/com/yd/api/practitioner/service/impl/PractitionerServiceImpl.java
View file @
3e16d24c
...
...
@@ -1344,7 +1344,7 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
for
(
MdDropOptions
info
:
mdDropOptionsList
){
optionScoreMap
.
put
(
info
.
getId
(),
info
.
getDropOptionScore
());
}
Integer
targetScoreMonth
=
0
;
int
targetScoreMonth
=
0
;
for
(
MktLeadsGoalsActions
info
:
leadsGoalsActions
){
Long
leadsActionId
=
info
.
getLeadsActionId
();
Integer
singleScore
=
optionScoreMap
.
get
(
leadsActionId
);
...
...
@@ -1500,6 +1500,32 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
return
responseVO
;
}
@Override
public
TeamActionsAverageQueryResponseVO
teamScoreAverageQuery
(
TeamActionsAverageQueryRequestVO
requestVO
)
{
TeamActionsAverageQueryResponseVO
responseVO
=
new
TeamActionsAverageQueryResponseVO
();
Long
practitionerId
=
requestVO
.
getPractitionerId
();
List
<
MdDropOptions
>
mdDropOptionsList
=
mdDropOptionsDALService
.
findByDropMasterCode
(
"bizchance_promotion_action"
);
ConcurrentMap
<
Long
,
Integer
>
optionScoreMap
=
new
ConcurrentHashMap
<>();
for
(
MdDropOptions
info
:
mdDropOptionsList
){
optionScoreMap
.
put
(
info
.
getId
(),
info
.
getDropOptionScore
());
}
List
<
AclPractitioner
>
aclPractitioners
=
aclPractitionerDALService
.
findForSubordinateIdByPractitionerId
(
practitionerId
);
//经纪人个数
int
practitionerNum
=
aclPractitioners
.
size
();
List
<
Long
>
practitionerIds
=
new
ArrayList
<>();
for
(
AclPractitioner
info
:
aclPractitioners
){
practitionerIds
.
add
(
info
.
getId
());
}
System
.
out
.
println
(
practitionerIds
.
toString
());
//查询此团队经纪人所有得跟进状态
List
<
Integer
>
totalStatistics
=
mktLeadsAssignedTrackDALService
.
totalStatisticsForTeam
(
practitionerIds
);
Integer
totalDay
=
totalStatistics
.
get
(
0
);
Integer
totalWeek
=
totalStatistics
.
get
(
1
);
Integer
totalMonth
=
totalStatistics
.
get
(
2
);
responseVO
.
setCommonResult
(
new
CommonResult
(
true
,
ZHBErrorConfig
.
getErrorInfo
(
"800000"
)));
return
responseVO
;
}
private
void
initializationAction
(
Long
practitionerId
,
int
year
)
{
//通过经纪人id 和 目标所属年度 去查询ag_mkt_leads_goals/ag_mkt_leads_goals_actions 并将is_active = 0
mktLeadsGoalsDALService
.
updateIsActiveIsNull
(
practitionerId
,
year
);
...
...
yd-api/src/main/java/com/yd/api/practitioner/vo/salestarget/TeamActionsAverageQueryRequestVO.java
0 → 100644
View file @
3e16d24c
package
com
.
yd
.
api
.
practitioner
.
vo
.
salestarget
;
import
lombok.Data
;
@Data
public
class
TeamActionsAverageQueryRequestVO
{
private
Long
practitionerId
;
}
yd-api/src/main/java/com/yd/api/practitioner/vo/salestarget/TeamActionsAverageQueryResponseVO.java
0 → 100644
View file @
3e16d24c
package
com
.
yd
.
api
.
practitioner
.
vo
.
salestarget
;
import
com.yd.api.result.CommonResult
;
import
lombok.Data
;
@Data
public
class
TeamActionsAverageQueryResponseVO
{
private
Double
scoreDayAverage
;
private
Double
scoreWeekAverage
;
private
Double
scoreMonthAverage
;
private
CommonResult
commonResult
;
}
yd-api/src/main/java/com/yd/dal/mapper/customer/AclPractitionerMapper.java
View file @
3e16d24c
...
...
@@ -39,4 +39,6 @@ public interface AclPractitionerMapper {
List
<
OwnOpportunityInfo
>
ownOpportunityQuery
(
@Param
(
"practitionerId"
)
Long
practitionerId
);
List
<
AclPractitioner
>
findByIds
(
@Param
(
"practitionerIdList"
)
List
<
Long
>
practitionerIdList
);
List
<
AclPractitioner
>
findForSubordinateIdByPractitionerId
(
Long
practitionerId
);
}
\ No newline at end of file
yd-api/src/main/java/com/yd/dal/mapper/marketing/MktLeadsAssignedTrackMapper.java
View file @
3e16d24c
...
...
@@ -21,4 +21,6 @@ public interface MktLeadsAssignedTrackMapper {
Page
<
MktLeadsAssignedTrack
>
selectByPrimaryKeySelective
(
MktLeadsAssignedTrack
mktLeadsAssignedTrack
);
List
<
MktLeadsAssignedTrack
>
findByTrackTimeForNew
(
MktLeadsAssignedTrack
mktLeadsAssignedTrack
);
List
<
Integer
>
totalStatisticsForTeam
(
List
<
Long
>
practitionerIds
);
}
\ No newline at end of file
yd-api/src/main/java/com/yd/dal/service/customer/AclPractitionerDALService.java
View file @
3e16d24c
...
...
@@ -82,4 +82,11 @@ public interface AclPractitionerDALService {
* @return
*/
List
<
AclPractitioner
>
findByIds
(
List
<
Long
>
practitionerIdList
);
/**
* 通过团队长经纪人id查询团队旗下所有经纪人
* @param practitionerId
* @return
*/
List
<
AclPractitioner
>
findForSubordinateIdByPractitionerId
(
Long
practitionerId
);
}
yd-api/src/main/java/com/yd/dal/service/customer/impl/AclPractitionerDALServiceImpl.java
View file @
3e16d24c
...
...
@@ -88,4 +88,9 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService
public
List
<
AclPractitioner
>
findByIds
(
List
<
Long
>
practitionerIdList
)
{
return
aclPractitionerMapper
.
findByIds
(
practitionerIdList
);
}
@Override
public
List
<
AclPractitioner
>
findForSubordinateIdByPractitionerId
(
Long
practitionerId
)
{
return
aclPractitionerMapper
.
findForSubordinateIdByPractitionerId
(
practitionerId
)
;
}
}
yd-api/src/main/java/com/yd/dal/service/marketing/Impl/MktLeadsAssignedTrackDALServiceImpl.java
View file @
3e16d24c
...
...
@@ -37,4 +37,9 @@ public class MktLeadsAssignedTrackDALServiceImpl implements MktLeadsAssignedTrac
public
List
<
MktLeadsAssignedTrack
>
findByTrackTimeForNew
(
MktLeadsAssignedTrack
mktLeadsAssignedTrack
)
{
return
mktLeadsAssignedTrackMapper
.
findByTrackTimeForNew
(
mktLeadsAssignedTrack
);
}
@Override
public
List
<
Integer
>
totalStatisticsForTeam
(
List
<
Long
>
practitionerIds
)
{
return
mktLeadsAssignedTrackMapper
.
totalStatisticsForTeam
(
practitionerIds
);
}
}
yd-api/src/main/java/com/yd/dal/service/marketing/MktLeadsAssignedTrackDALService.java
View file @
3e16d24c
...
...
@@ -12,4 +12,6 @@ public interface MktLeadsAssignedTrackDALService {
void
updateTrack
(
MktLeadsAssignedTrack
track
);
List
<
MktLeadsAssignedTrack
>
findByTrackTimeForNew
(
MktLeadsAssignedTrack
mktLeadsAssignedTrack
);
List
<
Integer
>
totalStatisticsForTeam
(
List
<
Long
>
practitionerIds
);
}
yd-api/src/main/resources/mapper/customer/AclPractitionerMapper.xml
View file @
3e16d24c
...
...
@@ -718,4 +718,13 @@
#{item}
</foreach>
</select>
<select
id=
"findForSubordinateIdByPractitionerId"
resultMap=
"BaseResultMap"
>
SELECT p.*
from ag_acl_practitioner p
LEFT JOIN ag_acl_practitioner_subordinate_system s on p.subordinate_system_id = s.id
where
s.owner_practitioner_id = #{practitionerId,jdbcType=BIGINT}
and p.is_active = 1
and s.is_active = 1
</select>
</mapper>
\ No newline at end of file
yd-api/src/main/resources/mapper/marketing/MktLeadsAssignedTrackMapper.xml
View file @
3e16d24c
...
...
@@ -323,4 +323,32 @@
</if>
</where>
</select>
<select
id=
"totalStatisticsForTeam"
resultType=
"integer"
>
SELECT sum(track_score) as scoreToday
FROM ag_mkt_leads_assigned_track
where is_active = 1
and to_days(track_time) = to_days(now())
and practitioner_id in
<foreach
collection=
"list"
item=
"practitionerId"
index=
"index"
open=
"("
close=
")"
separator=
","
>
#{practitionerId,jdbcType=BIGINT}
</foreach>
UNION all
SELECT sum(track_score) as scoreWeek
FROM ag_mkt_leads_assigned_track
where is_active = 1
and YEARWEEK(date_format(track_time,'%Y-%m-%d')) = YEARWEEK(now())
and practitioner_id in
<foreach
collection=
"list"
item=
"practitionerId"
index=
"index"
open=
"("
close=
")"
separator=
","
>
#{practitionerId,jdbcType=BIGINT}
</foreach>
UNION all
SELECT sum(track_score) as scoreMonth
FROM ag_mkt_leads_assigned_track
where is_active = 1
and date_format(track_time,'%Y-%m')=date_format(now(),'%Y-%m')
and practitioner_id in
<foreach
collection=
"list"
item=
"practitionerId"
index=
"index"
open=
"("
close=
")"
separator=
","
>
#{practitionerId,jdbcType=BIGINT}
</foreach>
</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