人才库:

return data.filter(function (item) {
return item.职级 === '';
})

区县分析:

 
//一级指标
const t = Object.values(data.reduce((acc, cur) => {
if (!acc[cur.二级指标名称]) {
acc[cur.二级指标名称] = {
'二级指标名称': cur.二级指标名称,
coreSum: cur.得分 * cur.三级指标权重,
v: cur.三级指标权重,
};
} else {
acc[cur.二级指标名称].coreSum += cur.得分 * cur.三级指标权重;
}
return acc;
}, {}));
t.forEach(item => {
item.value = (item.coreSum).toFixed(2);
item.name = '团队'
});
return t;

--------------------------------------------------------------------------------------------------
const tmp = [
{
"二级指标名称": "目标发展性",
"value": 9,
"name": "优秀"
},
{
"二级指标名称": "职能明确度",
"value": 9,
"name": "优秀"
},
{
"二级指标名称": "人岗匹配度",
"value": 9,
"name": "优秀"
},
{
"二级指标名称": "结构合理度",
"value": 9,
"name": "优秀"
},
{
"二级指标名称": "团队契合度",
"value": 9,
"name": "优秀"
},
{
"二级指标名称": "目标发展性",
"value": 7.5,
"name": "良"
},
{
"二级指标名称": "职能明确度",
"value": 7.5,
"name": "良"
},
{
"二级指标名称": "人岗匹配度",
"value": 7.5,
"name": "良"
},
{
"二级指标名称": "结构合理度",
"value": 7.5,
"name": "良"
},
{
"二级指标名称": "团队契合度",
"value": 7.5,
"name": "良"
},
{
"二级指标名称": "目标发展性",
"value": 6,
"name": "合格"
},
{
"二级指标名称": "职能明确度",
"value": 6,
"name": "合格"
},
{
"二级指标名称": "人岗匹配度",
"value": 6,
"name": "合格"
},
{
"二级指标名称": "结构合理度",
"value": 6,
"name": "合格"
},
{
"二级指标名称": "团队契合度",
"value": 6,
"name": "合格"
}
];
return tmp.concat(data);
 

//二级指标

const tmp = [
{
"三级指标名称": "目标规划力",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "目标认同度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "组织特征匹配度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "职数完备性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "职责明确性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "分工合理性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "经历契合度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "资历匹配度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "能力匹配度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "年龄合理性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "专业互补性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "来源多元化",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "角色契合度",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "价值观同向性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "团队协同性",
"得分": 9,
"公司": "优秀"
},
{
"三级指标名称": "目标规划力",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "目标认同度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "组织特征匹配度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "职数完备性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "职责明确性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "分工合理性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "经历契合度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "资历匹配度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "能力匹配度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "年龄合理性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "专业互补性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "来源多元化",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "角色契合度",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "价值观同向性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "团队协同性",
"得分": 7.5,
"公司": "良"
},
{
"三级指标名称": "目标规划力",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "目标认同度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "组织特征匹配度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "职数完备性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "职责明确性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "分工合理性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "经历契合度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "资历匹配度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "能力匹配度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "年龄合理性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "专业互补性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "来源多元化",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "角色契合度",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "价值观同向性",
"得分": 6,
"公司": "合格"
},
{
"三级指标名称": "团队协同性",
"得分": 6,
"公司": "合格"
},
];
return tmp.concat(data);
 
//平均年龄
let num = 0;
data.filter(function (item) {
return num += item.年龄;
});
var age = num / data.length;
age = Math.round(age);
return [{ 'value': '平均:' + age + '岁' }];
 
 
//劣势
 
data.sort((a, b) => a.得分 - b.得分);
return [data.slice(0, 3)[0]]
 

人才对比

//后备人才过滤
return data.filter(function (item) {
if (getCallbackValue('level') === '副科级') {
return item.职级 === getCallbackValue('level');
} else {
return item.职级 === getCallbackValue('level') || item.职级 === '副股级';
} }) //人才库(取前五) let level1 = [];
let level2 = [];
let level3 = [];
data.map(item => {
if (item.是否人才库 == 1) {
level1.push(item);
}
if (item.是否人才库 == 2) {
level2.push(item);
}
if (item.是否人才库 == 3) {
level3.push(item);
}
})
level1.sort((a, b) => b.素能得分 - a.素能得分);
level2.sort((a, b) => b.素能得分 - a.素能得分);
level3.sort((a, b) => b.素能得分 - a.素能得分);
let allLevel = level1.concat(level2.concat(level3))
let newArr = []
if (allLevel.length > 5) {
newArr = allLevel.splice(0, 5)
} else {
newArr = allLevel
}
return [newArr]

个人画像


1.//通过编码过滤
return data.filter(function (item) {
return item.员工编号 == getCallbackValue('code');
})

2.//通过人名过滤

//多行文本存入
this.personName = data[0].姓名
//其他组件取出
return data.filter(item => {
return item.姓名 === this.window.personName
})
 
3.//任现职时间(2021/01/01转具体多少年)
function calculateWorkOfYears(startDate) {
const startWorkTimestamp = new Date(startDate).getTime();
const currentTimestamp = new Date().getTime();
const workOfYears = (currentTimestamp - startWorkTimestamp) / (1000 * 60 * 60 * 24 * 365);
return Math.floor(workOfYears);
};
data.forEach(item => {
item.years = calculateWorkOfYears(item['任现职时间']) + '年';
});
return data;
4.担责任雷达图
return data.filter(function (item) {
return item.判断条件 == 0;
})
//担责任模拟数据
const tmp = [
{
"二级指标": "高质量考核",
"得分": 15,
"姓名": "优秀"
},
{
"二级指标": "员工敬业度评价",
"得分": 8,
"姓名": "优秀"
},
{
"二级指标": "多单位历练",
"得分": 20,
"姓名": "优秀"
},
{
"二级指标": "履职经历",
"得分": 28,
"姓名": "优秀"
},
{
"二级指标": "年龄",
"得分": 5,
"姓名": "优秀"
},
{
"二级指标": "学历",
"得分": 5,
"姓名": "优秀"
},
{
"二级指标": "职称/专业资质",
"得分": 5,
"姓名": "优秀"
},
{
"二级指标": "高质量考核",
"得分": 10,
"姓名": "良"
},
{
"二级指标": "员工敬业度评价",
"得分": 6,
"姓名": "良"
},
{
"二级指标": "多单位历练",
"得分": 15,
"姓名": "良"
},
{
"二级指标": "履职经历",
"得分": 21,
"姓名": "良"
},
{
"二级指标": "年龄",
"得分": 3,
"姓名": "良"
},
{
"二级指标": "学历",
"得分": 3,
"姓名": "良"
},
{
"二级指标": "职称/专业资质",
"得分": 4,
"姓名": "良"
},
{
"二级指标": "高质量考核",
"得分": 5,
"姓名": "合格"
},
{
"二级指标": "员工敬业度评价",
"得分": 3,
"姓名": "合格"
},
{
"二级指标": "多单位历练",
"得分": 10,
"姓名": "合格"
},
{
"二级指标": "履职经历",
"得分": 12,
"姓名": "合格"
},
{
"二级指标": "年龄",
"得分": 1,
"姓名": "合格"
},
{
"二级指标": "学历",
"得分": 1,
"姓名": "合格"
},
{
"二级指标": "职称/专业资质",
"得分": 3,
"姓名": "合格"
},
];
return tmp.concat(data);
 
 
//提素能模拟数据
const tmp = [
{
"二级指标": "创新能力",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "学习能力",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "问题解决",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "执行力",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "勇敢担当",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "计划管控",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "影响说服",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "全局意识",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "关系管理",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "管理能力",
"得分": 80,
"姓名": "优秀"
},
{
"二级指标": "创新能力",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "学习能力",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "问题解决",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "执行力",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "勇敢担当",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "计划管控",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "影响说服",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "全局意识",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "关系管理",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "管理能力",
"得分": 70,
"姓名": "良"
},
{
"二级指标": "创新能力",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "学习能力",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "问题解决",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "执行力",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "勇敢担当",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "计划管控",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "影响说服",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "全局意识",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "关系管理",
"得分": 60,
"姓名": "合格"
},
{
"二级指标": "管理能力",
"得分": 60,
"姓名": "合格"
},
];
return tmp.concat(data);
 
 


DataV过滤器的更多相关文章

  1. 海量大数据大屏分析展示一步到位:DataWorks数据服务对接DataV最佳实践

    1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com)  是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟 ...

  2. 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践

    1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com) 是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟“ ...

  3. ASP.NET Core 中文文档 第四章 MVC(4.3)过滤器

    原文:Filters 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:何镇汐 ASP.NET MVC 过滤器 可在执行管道的前后特定阶段执行代码.过滤器可以配置为全局有效.仅对控 ...

  4. ASP.NET Web API 过滤器创建、执行过程(二)

    ASP.NET Web API 过滤器创建.执行过程(二) 前言 前面一篇中讲解了过滤器执行之前的创建,通过实现IFilterProvider注册到当前的HttpConfiguration里的服务容器 ...

  5. ASP.NET Web API 过滤器创建、执行过程(一)

    ASP.NET Web API 过滤器创建.执行过程(一) 前言 在上一篇中我们讲到控制器的执行过程系列,这个系列要搁置一段时间了,因为在控制器执行的过程中包含的信息都是要单独的用一个系列来描述的,就 ...

  6. ABP(现代ASP.NET样板开发框架)系列之13、ABP领域层——数据过滤器(Data filters)

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之13.ABP领域层——数据过滤器(Data filters) ABP是“ASP.NET Boilerplate P ...

  7. AngularJS过滤器filter-时间日期格式-渲染日期格式-$filter

    今天遇到了这些问题索性就 写篇文章吧 话不多说直接上栗子 不管任何是HTML格式还是JS格式必须要在  controller 里面写 // new Date() 获取当前时间 yyyy-MM-ddd ...

  8. ASP.NET MVC5+EF6+EasyUI 后台管理系统(40)-精准在线人数统计实现-【过滤器+Cache】

    系列目录 上次的探讨没有任何结果,我浏览了大量的文章和个别系统的参考!决定用Cache来做,这可能有点难以接受但是配合mvc过滤器来做效果非常好! 由于之前的过滤器我们用过了OnActionExecu ...

  9. Hawk 4.2 过滤器

    过滤器可以在流中,过滤掉不符合条件的文档.当然也可勾选反向,此时只会留下不符合条件的文档. 空对象过滤器 最为常用,需要列名,可以过滤掉所有内容为Null,或字符串全部都是空字符的情况 数值范围过滤 ...

  10. 实现MVC自定义过滤器,自定义Area过滤器,自定义Controller,Action甚至是ViewData过滤器

    MVC开发中几种以AOP方式实现的Filters是非常好用的,默认情况下,我们通过App_Start中的FilterConfig来实现的过滤器注册是全局的,也就是整个应用程序都会使用的,针对单独的Fi ...

随机推荐

  1. Eclipse JDT--AST入门

    最近做program analysis,需要解析Java的源代码,于是就去看了看Abstract Syntax Tree(AST,中文为抽象语法树).有点无奈的是,网上关于这方面的资料比我想象中的少, ...

  2. Tornado框架之项目部署(六)

    知识点 supervisor配置与使用 nginx配置 目录: 部署Tornado 1. supervisor 安装 配置 启动 supervisorctl 2. nginx 部署Tornado 为了 ...

  3. 使用 Jmeter进行压测

    一.环境配置 因为jmeter需要java环境,所以需要下载Jdk和Jmeter.需要注意jdk的版本和jmeter的匹配问题 推荐大家观看Furion的作者百小僧的视频来学习,讲的很细 https: ...

  4. regsvr32.exe使用

    regsvr32.exe使用详解:  regsvr32.exe是32位系统下使用的DLL注册和反注册工具,使用它必须通过命令行的方式使用,格式是:  regsvr32 [/u] [/s] [/n] [ ...

  5. nodejs koa2 ocr识别 身份证信息

    1. 安装依赖 npm install baidu-aip-sdk 2.创建AipOcrClient 注:需要到百度api创建应用,拿到所需的APPID/AK/SK https://console.b ...

  6. MAC清理

    今日分享 Mac清理 有很多三方软件可以清理,以前用过腾讯的柠檬lite,每次就清个几百兆,系统数据感觉还是得自己手动清理才行 今天电脑又在提醒储存空间不足了,一看占用发现系统数据占了100多个G,学 ...

  7. 无法加载文件 C:\Users\admin\AppData\Roaming\npm\anyproxy.ps1

    无法加载文件 C:\Users\admin\AppData\Roaming\npm\anyproxy.ps1 我们右击开始菜单,以管理员身份打开power shell 运行命令: set-Execut ...

  8. 在 .NET 下,Fiddler 不再抓取 Web Service 流量问题

    在 .NET 下,Fiddler 不再抓取 Web Service 流量问题 问题现象 原来的一个应用中,需要访问 SOAP 服务.在原来的 .NET Framework 版本中,使用 Fiddler ...

  9. Web components vs. React

    Web components vs. React - LogRocket Blog Web Components + Compose 是一条更好的路线. 当然,像 molecule 一样用 HTML ...

  10. rabbitmq3.7.3 发布了一个新的 exchange x-random

    direct exchange 同一个 routing key 可以绑定多个 queue,当给这个routing key发消息时,所有 queue 都会投递.这个行为对于一些场景不适用,有时我们希望只 ...