完成坐席业绩的请求方法。
This commit is contained in:
@@ -26,7 +26,7 @@ interface DepartmentArchievement // 定义业绩对象的结构
|
||||
backward_list: string[];
|
||||
}
|
||||
|
||||
interface CallerArchievement // 坐席的业绩
|
||||
interface CallerArchievement // 坐席业绩对象
|
||||
{
|
||||
success: boolean;
|
||||
message: string;
|
||||
@@ -36,15 +36,16 @@ interface CallerArchievement // 坐席的业绩
|
||||
attaching_rate: string;
|
||||
}
|
||||
|
||||
interface MenusalArchievementItem
|
||||
interface MenusalArchievementItem // 每月业绩清单的项目
|
||||
{
|
||||
month: string;
|
||||
premium: number;
|
||||
month: number;
|
||||
premium: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取部门业绩数据,并调用回调函数进行渲染。
|
||||
* @param render 用于给组件更新数据的回调函数
|
||||
* @param departmentInfo 作为请求参数的部门参数对象
|
||||
* @param render 用于给组件更新数据的回调函数,用DepartmentArchievement对象调用;
|
||||
*/
|
||||
function queryDepartmentArchievement( departmentInfo: Department, render: any ): void
|
||||
{
|
||||
@@ -98,6 +99,14 @@ function queryDepartmentArchievement( departmentInfo: Department, render: any ):
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询坐席的业绩,并调用渲染函数.
|
||||
* 1、请求坐席业绩的数据
|
||||
* 2、对每月业绩清单进行检查,如果有缺少则用0代替,检查的结果是12个月的清单,让调用者自己截断;
|
||||
* 3、将检查后的清单,写入到业绩对象中,只写金额
|
||||
* @param callerInfo 坐席的信息参数,用于请求业绩;
|
||||
* @param render 渲染函数,用业绩对象CallerArchievement作为参数;
|
||||
*/
|
||||
function queryCallerArchievement( callerInfo: TelSaler, render: any ): void
|
||||
{
|
||||
const caller = {
|
||||
@@ -105,6 +114,7 @@ function queryCallerArchievement( callerInfo: TelSaler, render: any ): void
|
||||
callName: callerInfo.telSalerName,
|
||||
};
|
||||
|
||||
// 发送请求
|
||||
instance.request({
|
||||
method: "post",
|
||||
url: API_URL.URL_CALLER_ARCHIEVEMENT,
|
||||
@@ -124,8 +134,29 @@ function queryCallerArchievement( callerInfo: TelSaler, render: any ): void
|
||||
attaching_rate: data.attaching_rate ?? "0.0",
|
||||
};
|
||||
|
||||
// 检查业绩清单有没有缺漏,缺漏的用0补上
|
||||
const checkedList = checkMensualArchievement( data.mensual_archievement_list );
|
||||
|
||||
// 排序一下
|
||||
checkedList.sort(( a: MenusalArchievementItem, b: MenusalArchievementItem ): number =>
|
||||
{
|
||||
return a.month - b.month;
|
||||
});
|
||||
|
||||
// 将排序后的每月业绩写到业绩对象中
|
||||
checkedList.forEach(( item: MenusalArchievementItem ): void =>
|
||||
{
|
||||
const premium = Number( item.premium );
|
||||
|
||||
callArchievement.mensual_archievement_list.push( premium );
|
||||
});
|
||||
|
||||
// 调用渲染函数
|
||||
if ( render !== undefined )
|
||||
{
|
||||
render( callArchievement );
|
||||
}
|
||||
|
||||
console.log( `queryCallerArchievement查询结果${data}` );
|
||||
})
|
||||
// 请求失败
|
||||
@@ -137,8 +168,9 @@ function queryCallerArchievement( callerInfo: TelSaler, render: any ): void
|
||||
|
||||
/**
|
||||
* 检查服务器返回的每月业绩数组,检查是否有缺漏,缺少的月份业绩用0代替。
|
||||
* @param mensualArchievementList
|
||||
* @returns
|
||||
* 检查的结果是12个月的清单,由调用者自己进行截断。
|
||||
* @param mensualArchievementList MenusalArchievementItem类型的数组,为业绩清单
|
||||
* @returns 返回MenusalArchievementItem数组,为检查过的清单
|
||||
*/
|
||||
function checkMensualArchievement( mensualArchievementList: MenusalArchievementItem[]): MenusalArchievementItem[]
|
||||
{
|
||||
|
@@ -89,7 +89,8 @@ import { ElMessage } from "element-plus";
|
||||
import
|
||||
{
|
||||
type DepartmentArchievement,
|
||||
queryDepartmentArchievement
|
||||
queryDepartmentArchievement,
|
||||
queryCallerArchievement
|
||||
} from "@/utils/archievement.js";
|
||||
import { RankingListItem } from "@/types/cpicxim/RankingListItem.js";
|
||||
import
|
||||
@@ -178,7 +179,7 @@ export default {
|
||||
});
|
||||
|
||||
// 保存业绩数据
|
||||
const applyArchievementData = ( data: DepartmentArchievement ) =>
|
||||
const applyDepartmentArchievementData = ( data: DepartmentArchievement ) =>
|
||||
{
|
||||
console.log( "部门业绩数据", data );
|
||||
|
||||
@@ -254,7 +255,7 @@ export default {
|
||||
month: "06",
|
||||
};
|
||||
|
||||
queryDepartmentArchievement( deparmentInfo, applyArchievementData );
|
||||
queryDepartmentArchievement( deparmentInfo, applyDepartmentArchievementData );
|
||||
requestRankingList( rankinglistRequest, applyRankingListData );
|
||||
};
|
||||
|
||||
@@ -283,7 +284,7 @@ export default {
|
||||
callerInfo,
|
||||
timerHandler,
|
||||
getTotalArchievement,
|
||||
renderData: applyArchievementData,
|
||||
renderData: applyDepartmentArchievementData,
|
||||
refresh,
|
||||
logoutDesktopArchievement,
|
||||
};
|
||||
|
Reference in New Issue
Block a user