Compare commits

...

3 Commits

Author SHA1 Message Date
Kane Wang d517c2e82a 保存进度! 2023-10-28 12:09:02 +08:00
Kane Wang 80ba8da7e0 保存进度! 2023-10-27 18:59:50 +08:00
Kane Wang 1422c0b781 保存进度! 2023-10-27 16:51:57 +08:00
8 changed files with 157 additions and 140 deletions

View File

@ -146,17 +146,28 @@ CREATE OR REPLACE PACKAGE BODY TELSALE_ARCHIEVEMENT_PKG IS
a_mensual_cur OUT cur_type a_mensual_cur OUT cur_type
) IS ) IS
l_caller_name VARCHAR2(100); l_caller_name VARCHAR2(100);
l_this_month VARCHAR2(4); l_department_name VARCHAR2(100);
--l_this_month VARCHAR2(4);
l_this_year VARCHAR2(4); l_this_year VARCHAR2(4);
l_firstday DATE; --l_firstday DATE;
l_rownum INTEGER; l_rownum INTEGER;
BEGIN BEGIN
--查询坐席名称,验证代码 --查询坐席名称,和部门名称,验证代码
BEGIN BEGIN
SELECT saler_name SELECT zx.saler_name,
bm.department_name
INTO l_caller_name,
l_department_name
FROM tele_saler zx,
tele_saler_team team,
idst0.bm_t bm
WHERE zx.saler_code = a_caller_code
AND zx.team_code = team.team_code
AND team.department_code = bm.department_code;
/* SELECT saler_name
INTO l_caller_name INTO l_caller_name
FROM tele_saler FROM tele_saler
WHERE saler_code = a_caller_code; WHERE saler_code = a_caller_code;*/
EXCEPTION EXCEPTION
-- 如果没有查询到坐席名称,说明代码有误,抛出异常 -- 如果没有查询到坐席名称,说明代码有误,抛出异常
WHEN no_data_found THEN WHEN no_data_found THEN
@ -164,12 +175,12 @@ CREATE OR REPLACE PACKAGE BODY TELSALE_ARCHIEVEMENT_PKG IS
CALLERCODE_EXCEPTION_MSG); CALLERCODE_EXCEPTION_MSG);
END; END;
l_this_month := to_char(SYSDATE, --l_this_month := to_char(SYSDATE,
'mm'); -- 'mm');
l_this_year := to_char(SYSDATE, l_this_year := to_char(SYSDATE,
'yyyy'); 'yyyy');
l_firstday := to_date(l_this_year || '-01-01 00:00:00', --l_firstday := to_date(l_this_year || '-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss'); -- 'yyyy-mm-dd hh24:mi:ss');
--总车险保费 --总车险保费
SELECT round(nvl(SUM(cf.车险个人客户保费), SELECT round(nvl(SUM(cf.车险个人客户保费),
@ -177,7 +188,8 @@ CREATE OR REPLACE PACKAGE BODY TELSALE_ARCHIEVEMENT_PKG IS
2) bf 2) bf
INTO a_total INTO a_total
FROM 坐席车非每日保费 cf FROM 坐席车非每日保费 cf
WHERE cf.坐席工号 = a_caller_code WHERE cf.坐席名称 = l_caller_name
AND cf.部门 = l_department_name
AND cf.年份 = l_this_year; AND cf.年份 = l_this_year;
--渗透率 --渗透率
@ -194,28 +206,7 @@ CREATE OR REPLACE PACKAGE BODY TELSALE_ARCHIEVEMENT_PKG IS
FROM BI电销坐席车非渗透率跟踪表 t FROM BI电销坐席车非渗透率跟踪表 t
WHERE t.经办 = l_caller_name WHERE t.经办 = l_caller_name
AND rownum = 1; AND rownum = 1;
/*SELECT decode(nvl(SUM(cf.车险个人客户保费),
0),
0,
0,
round(SUM(cf.车非融合保费) / SUM(cf.车险个人客户保费) * 100,
2))
INTO a_attaching_rate
FROM 坐席车非每日保费 cf
WHERE cf.坐席工号 = a_caller_code
AND cf.年份 = l_this_year
AND cf.月份 = l_this_month;*/
--续保率 --续保率
/*SELECT decode(nvl(SUM(xb.到期数),
0),
0,
0,
round(SUM(xb.已续保累计) / SUM(xb.到期数) * 100,
2)) xbl
INTO a_renewal_rate
FROM 坐席续保统计 xb
WHERE xb.坐席工号 = a_caller_code;*/
SELECT rownum, SELECT rownum,
round(nvl(t."个车续保率(全月)(%)", round(nvl(t."个车续保率(全月)(%)",
0), 0),
@ -229,11 +220,12 @@ CREATE OR REPLACE PACKAGE BODY TELSALE_ARCHIEVEMENT_PKG IS
--每月业绩 --每月业绩
OPEN A_MENSUAL_CUR FOR OPEN A_MENSUAL_CUR FOR
SELECT CF.月份 MM, SELECT CF.月份 MM,
ROUND(NVL(SUM(CF.车险个人客户保费 + CF.车非融合保费), ROUND(NVL(SUM(CF.车险个人客户保费),
0), 0),
0) BF 0) BF
FROM 坐席车非每日保费 CF FROM 坐席车非每日保费 CF
WHERE cf.坐席工号 = a_caller_code WHERE cf.坐席名称 = l_caller_name
AND cf.部门 = l_department_name
AND 签单日期 >= TO_DATE(TO_CHAR(SYSDATE, AND 签单日期 >= TO_DATE(TO_CHAR(SYSDATE,
'yyyy') || '-01-01 00:00:00', 'yyyy') || '-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss') 'yyyy-mm-dd hh24:mi:ss')

View File

@ -52,7 +52,7 @@ SELECT
GROUP BY , GROUP BY ,
, ,
HAVING = '06' HAVING = '10月'
ORDER BY , ORDER BY ,
DESC; DESC;
@ -61,7 +61,7 @@ SELECT
2) 2)
FROM FROM
WHERE = 'QDI' WHERE = 'QDI'
AND = '05' AND = '10'
AND = '2023' AND = '2023'
GROUP BY GROUP BY
ORDER BY DESC; ORDER BY DESC;
@ -75,3 +75,30 @@ SELECT
WHERE xb. = '续保业务部' WHERE xb. = '续保业务部'
GROUP BY GROUP BY
ORDER BY DESC; ORDER BY DESC;
-------------------------------------
SELECT zx.saler_name,
bm.department_name
FROM tele_saler zx,
tele_saler_team team,
idst0.bm_t bm
WHERE zx.saler_name = '张楚沂'
AND zx.team_code = team.team_code
AND team.department_code = bm.department_code;
----------------------------------------
/*
truncate table BI机构渗透率跟踪表;
*/
SELECT *
FROM BI电销坐席车非渗透率跟踪表 t
WHERE t. = '张楚沂';
SELECT *
FROM BI电销坐席续保率跟踪表
WHERE = '张楚沂';
SELECT *
FROM BI机构渗透率跟踪表;
SELECT *
FROM BI机构当月个车续保率跟踪表;

View File

@ -2,18 +2,28 @@
* @Author: Kane * @Author: Kane
* @Date: 2023-02-28 19:25:30 * @Date: 2023-02-28 19:25:30
* @LastEditors: Kane * @LastEditors: Kane
* @FilePath: /task_schedule/src/assets/css/public/global.scss * @FilePath: /task_schedule/src/assets/css/public/variables.scss
* @Description: * @Description:
* *
* Copyright (c) ${2022} by Kane, All Rights Reserved. * Copyright (c) ${2022} by Kane, All Rights Reserved.
*/ */
// color // color
/*
$color-bg-01: #fecb96; $color-bg-01: #fecb96;
$color-bg-02: #f7954e; $color-bg-02: #f7954e;
$color-bg-03: #f27620; $color-bg-03: #f27620;
$color-bg-04: #da3703; $color-bg-04: #da3703;
$color-bg-05: #ba1800; $color-bg-05: #ba1800;
*/
$color-bg-01: #00b2f8;
$color-bg-02: #00b0fb;
$color-bg-03: #0279ea;
$color-bg-04: #046ed6;
$color-bg-05: #033eb6;
$color-title-font: #046ed6;
$color-charts-bg: #ffffff9f; $color-charts-bg: #ffffff9f;
$color-honorlist-bg: rgba(255, 255, 255, 0.3); $color-honorlist-bg: rgba(255, 255, 255, 0.3);

View File

@ -12,6 +12,7 @@
<el-progress <el-progress
type="circle" type="circle"
:percentage="ui.percentage" :percentage="ui.percentage"
status="success"
> >
<template #default> <template #default>
<span class="percentage-label">{{ ui.indicator }}</span> <span class="percentage-label">{{ ui.indicator }}</span>

View File

@ -15,10 +15,13 @@
alt="" alt=""
> >
<div class="title-wrapper"> <div class="title-wrapper">
<span>"消8灭70"突围战</span> <span> 8 6 突围战</span>
<span>{{ props.month }}入营坐席</span> <span>指标落后入营坐席</span>
</div> </div>
</div> </div>
<div class="telsaler-list-wrapper">
<span>开发中</span>
</div>
</div> </div>
</template> </template>
@ -46,6 +49,8 @@ export default {
<style scoped lang="scss"> <style scoped lang="scss">
.dishonorlist-wrapper { .dishonorlist-wrapper {
display: flex;
flex-direction: column;
height: 240px; height: 240px;
width: 360px; width: 360px;
border-radius: 5px; border-radius: 5px;
@ -55,10 +60,16 @@ export default {
padding: 10px; padding: 10px;
>*+* {
margin-top: 10px;
}
.banner-wrapper { .banner-wrapper {
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: stretch; align-items: stretch;
height: 65px;
flex-grow: 0;
img { img {
// width: 70px; // width: 70px;
@ -80,4 +91,24 @@ export default {
} }
} }
} }
.telsaler-list-wrapper {
flex-grow: 1;
display: flex;
justify-content: center;
align-items: center;
span {
display: block;
text-align: center;
color: rgb(101, 140, 194);
margin-top: 0px;
font: {
size: 2rem;
family: "FZ-ZHUOHEI";
weight: 100;
}
}
}
</style> </style>

View File

@ -9,38 +9,17 @@
--> -->
<template> <template>
<div class="honorlist-wrapper"> <div class="honorlist-wrapper">
<span class="title">90俱乐部{{ $props.month }}月入围坐席</span>
<div class="reward-wrapper">
<div class="leading-reward-wrapper">
<div class="banner-wrapper"> <div class="banner-wrapper">
<img <img
src="@/assets/img/ranking/medal.png" src="@/assets/img/ranking/medal.png"
alt="领跑奖" alt=""
> >
<span>领跑奖</span> <div class="title-wrapper">
</div> <span>90俱乐部标杆坐席</span>
<div class="gainer-wrapper">
<span
v-for="gainer in ui.leadingReward"
:key="gainer"
>{{ gainer }}</span>
</div>
</div>
<div class="advance-reward-wrapper">
<div class="banner-wrapper">
<img
src="@/assets/img/ranking/copper_medal.png"
alt="飞跃奖"
>
<span>飞跃奖</span>
</div>
<div class="gainer-wrapper">
<span
v-for="gainer in ui.advanceReward"
:key="gainer"
>{{ gainer }}</span>
</div> </div>
</div> </div>
<div class="telsaler-list-wrapper">
<span>开发中</span>
</div> </div>
</div> </div>
</template> </template>
@ -81,6 +60,8 @@ export default {
<style scoped lang="scss"> <style scoped lang="scss">
.honorlist-wrapper { .honorlist-wrapper {
display: flex;
flex-direction: column;
height: 240px; height: 240px;
width: 360px; width: 360px;
border-radius: 5px; border-radius: 5px;
@ -93,48 +74,48 @@ export default {
>*+* { >*+* {
margin-top: 10px; margin-top: 10px;
} }
}
.title { .banner-wrapper {
display: block;
text-align: center;
font: {
family: "FZ-ZHUOHEI";
size: 1.4rem;
}
color: goldenrod;
}
.reward-wrapper {
width: 100%;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: stretch; align-items: center;
height: 65px;
flex-grow: 0;
>*+* { img {
margin-left: 10px; width: 65px;
height: 65px;
} }
.leading-reward-wrapper { .title-wrapper {
width: 165px;
height: 100%;
}
.advance-reward-wrapper {
width: 165px;
height: 100%;
}
span { span {
display: block; display: block;
margin-top: 5px;
text-align: center; text-align: center;
color: #fff; color: rgb(245, 178, 11);
margin-top: 0px;
font: {
size: 1.65rem;
family: "FZ-ZHUOHEI";
weight: 100;
}
}
}
}
.telsaler-list-wrapper {
flex-grow: 1;
display: flex;
justify-content: center;
align-items: center;
span {
display: block;
text-align: center;
color: rgb(101, 140, 194);
margin-top: 0px;
font: { font: {
size: 2rem; size: 2rem;
@ -142,30 +123,5 @@ export default {
weight: 100; weight: 100;
} }
} }
.banner-wrapper {
display: flex;
justify-content: center;
align-items: center;
img {
width: 30px;
height: 30px;
}
span {
display: inline-block;
text-align: center;
color: #fff;
margin-top: 0px;
font: {
size: 1.5rem;
family: "FZ-ZHUOHEI";
weight: 100;
}
}
}
}
} }
</style> </style>

View File

@ -42,7 +42,7 @@
align="center" align="center"
> >
<template #default="ranking"> <template #default="ranking">
<span class="rankinglist-index">{{ ranking.row.appraiseValue }}</span> <span class="rankinglist-index">{{ ranking.row.appraiseValue }}%</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -384,7 +384,7 @@ export default {
size: 90px; size: 90px;
} }
color: $color-bg-04; color: $color-title-font;
text-shadow: #feebb1 0px 0px, text-shadow: #feebb1 0px 0px,
#feebb1 5px 0px, #feebb1 5px 0px,
#feebb1 -5px -0px, #feebb1 -5px -0px,