Commit 0f12e5c8 authored by 姬鋆屾's avatar 姬鋆屾

parent f230b2cb
...@@ -8,43 +8,47 @@ ...@@ -8,43 +8,47 @@
<div class="title" style="margin-bottom:40px">今日数据洞察</div> <div class="title" style="margin-bottom:40px">今日数据洞察</div>
<div class="cell1"> <div class="cell1">
<div class="title">人事数据</div> <div class="title">人事数据</div>
<div class="datas flex flex-align-center flex-pack-justify flex_warp"> <div
class="datas flex flex-align-center flex-pack-justify flex_warp"
>
<div class="item"> <div class="item">
<div>总人数</div> <div>总人数</div>
<div>{{homeStat.totalPersonNum}}</div> <div>{{ homeStat.totalPersonNum }}</div>
</div> </div>
<div class="item"> <div class="item">
<div>部门人数</div> <div>部门人数</div>
<div>{{homeStat.totalDeptNum}}</div> <div>{{ homeStat.totalDeptNum }}</div>
</div> </div>
</div> </div>
</div> </div>
<div class="cell1"> <div class="cell1">
<div class="title">考勤数据</div> <div class="title">考勤数据</div>
<div class="datas flex flex-align-center flex-pack-justify flex_warp"> <div
class="datas flex flex-align-center flex-pack-justify flex_warp"
>
<div class="item"> <div class="item">
<div>打卡人数</div> <div>打卡人数</div>
<div>{{homeStat.attendPersonNum}}</div> <div>{{ homeStat.attendPersonNum }}</div>
</div> </div>
<div class="item"> <div class="item">
<div>出勤率</div> <div>出勤率</div>
<div>{{homeStat.attendRadio}}%</div> <div>{{ homeStat.attendRadio }}%</div>
</div> </div>
<div class="item"> <div class="item">
<div>请假人数</div> <div>请假人数</div>
<div>{{homeStat.levealPersonNum}}</div> <div>{{ homeStat.levealPersonNum }}</div>
</div> </div>
<div class="item"> <div class="item">
<div>迟到人数</div> <div>迟到人数</div>
<div>{{homeStat.latePersonNum}}</div> <div>{{ homeStat.latePersonNum }}</div>
</div> </div>
<div class="item"> <div class="item">
<div>早退人数</div> <div>早退人数</div>
<div>{{homeStat.leftEarlyPersonNum}}</div> <div>{{ homeStat.leftEarlyPersonNum }}</div>
</div> </div>
<div class="item"> <div class="item">
<div>缺卡人数</div> <div>缺卡人数</div>
<div>{{homeStat.missCardPersonNum}}</div> <div>{{ homeStat.missCardPersonNum }}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -56,14 +60,20 @@ ...@@ -56,14 +60,20 @@
<div class="data_right"> <div class="data_right">
<div class="title">科学化、精细化、以人为本知行合一的管理理念</div> <div class="title">科学化、精细化、以人为本知行合一的管理理念</div>
<div class="textWord"> <div class="textWord">
坚持政治性与人民性的根本遵循、制度化与规范化的根本依托、考人与考事的相互结合<br> 坚持政治性与人民性的根本遵循、制度化与规范化的根本依托、考人与考事的相互结合<br />
创新性与技术性的重要支撑以及效能性与发展性的不懈追求 创新性与技术性的重要支撑以及效能性与发展性的不懈追求
</div> </div>
<div class="selectBars flex flex-align-center flex-pack-justify flex_warp"> <div
<div class="Bar_item" v-for="(item, index) in barList" :key="index" class="selectBars flex flex-align-center flex-pack-justify flex_warp"
@click="tabChildren(item.barName)"> >
<div
class="Bar_item"
v-for="(item, index) in barList"
:key="index"
@click="tabChildren(item.barName)"
>
<div class="icon"> <div class="icon">
<img :src="item.icon"> <img :src="item.icon" />
</div> </div>
<div class="barnam">{{ item.barName }}</div> <div class="barnam">{{ item.barName }}</div>
<div class="des" v-html="item.desc"></div> <div class="des" v-html="item.desc"></div>
...@@ -83,40 +93,43 @@ export default { ...@@ -83,40 +93,43 @@ export default {
return this.$store.state.userData; return this.$store.state.userData;
}, },
menu() { menu() {
return this.mapMenu(this.userData.barList) return this.mapMenu(this.userData.barList);
} },
}, },
data() { data() {
return { return {
// 数据洞察 // 数据洞察
homeStat:{ homeStat: {
totalPersonNum:0,//总人数 totalPersonNum: 0, //总人数
totalDeptNum:0,//部门数 totalDeptNum: 0, //部门数
attendPersonNum:0,//考勤人数 attendPersonNum: 0, //考勤人数
attendRadio:0,//出勤率 attendRadio: 0, //出勤率
levealPersonNum:0,//请假人数 levealPersonNum: 0, //请假人数
latePersonNum:0,//迟到人数 latePersonNum: 0, //迟到人数
leftEarlyPersonNum:0,//早退人数 leftEarlyPersonNum: 0, //早退人数
missCardPersonNum:0,//缺卡人数 missCardPersonNum: 0, //缺卡人数
}, },
barList: [ barList: [
{ {
icon: require('@/assets/images/u148.png'), icon: require("@/assets/images/u148.png"),
barName: '智能人事', barName: "智能人事",
desc: '提供包括组织管理、职位管理、人事管理、人事<br>统计报表等相关功能', desc:
navList: [] "提供包括组织管理、职位管理、人事管理、人事<br>统计报表等相关功能",
navList: [],
}, },
{ {
icon: require('@/assets/images/u153.png'), icon: require("@/assets/images/u153.png"),
barName: '考勤打卡', barName: "考勤打卡",
desc: '提供包括组织管理、职位管理、人事管理、人事<br>统计报表等相关功能', desc:
navList: [] "提供包括组织管理、职位管理、人事管理、人事<br>统计报表等相关功能",
navList: [],
}, },
{ {
icon: require('@/assets/images/u158.png'), icon: require("@/assets/images/u158.png"),
barName: '绩效管理', barName: "绩效管理",
desc: '根据部门/个人承担的目标和任务完成情况以及工作<br>评价结果、加减分纪实现考核结果自动生成。', desc:
navList: [] "根据部门/个人承担的目标和任务完成情况以及工作<br>评价结果、加减分纪实现考核结果自动生成。",
navList: [],
}, },
// { // {
// icon: require('@/assets/images/u167.png'), // icon: require('@/assets/images/u167.png'),
...@@ -131,45 +144,48 @@ export default { ...@@ -131,45 +144,48 @@ export default {
// navList: [] // navList: []
// }, // },
{ {
icon: require('@/assets/images/u177.png'), icon: require("@/assets/images/u177.png"),
barName: '系统设置', barName: "系统设置",
desc: '提供包括RBAC用户-角色-权限管理、版本管理、<br>操作及登录日志管理等功能', desc:
navList: [] "提供包括RBAC用户-角色-权限管理、版本管理、<br>操作及登录日志管理等功能",
} navList: [],
] },
} ],
};
}, },
created() { created() {
this.$store.commit('setHeadBar', []) this.$store.commit("setHeadBar", []);
this.$store.commit("setCurrentParentName", '') this.$store.commit("setCurrentParentName", "");
this.$store.commit('setCurrentThirdArr', []) this.$store.commit("setCurrentThirdArr", []);
this.$store.commit('setCurrentSecondPath', '') this.$store.commit("setCurrentSecondPath", "");
this.$store.commit('setThirdPath', '') this.$store.commit("setThirdPath", "");
this.homeNum() this.homeNum();
}, },
methods: { methods: {
tabChildren(name) { tabChildren(name) {
console.log("name:" + name) console.log("name:" + name);
this.$store.commit("setCurrentParentName", name)//存储选择路由 this.$store.commit("setCurrentParentName", name); //存储选择路由
let result = this.menu.find(item => item.name === name) let result = this.menu.find((item) => item.name === name);
this.$store.commit('setHeadBar', result) this.$store.commit("setHeadBar", result);
console.log("result:", result) console.log("result:", result);
if (result) {
// 路由跳转 // 路由跳转
if (result.children.length > 0) { if (result.children.length > 0) {
this.$store.commit('setCurrentThirdArr', result.children[0].children) this.$store.commit("setCurrentThirdArr", result.children[0].children);
this.$store.commit('setCurrentSecondPath', result.children[0].path) this.$store.commit("setCurrentSecondPath", result.children[0].path);
this.$store.commit('setThirdPath', result.children[0].path) this.$store.commit("setThirdPath", result.children[0].path);
this.$router.push({ path: result.children[0].path }) this.$router.push({ path: result.children[0].path });
} else { } else {
this.$message.error('暂未完成添加'); this.$message.error("暂未完成添加");
}
} else {
this.$message.error("暂无权限");
} }
}, },
mapMenu(arr) { mapMenu(arr) {
if (arr.length === 0) return [] if (arr.length === 0) return [];
let result = arr.map(item => { let result = arr.map((item) => {
const url = item.url const url = item.url
? item.url ? item.url
: item.childList[0] : item.childList[0]
...@@ -180,23 +196,24 @@ export default { ...@@ -180,23 +196,24 @@ export default {
path: url, path: url,
id: item.id, id: item.id,
icon: item.imgPath, icon: item.imgPath,
children: item.childList.length === 0 ? [] : this.mapMenu(item.childList) children:
} item.childList.length === 0 ? [] : this.mapMenu(item.childList),
}) };
return result });
return result;
}, },
// 查询统计数据 // 查询统计数据
homeNum() { homeNum() {
this.$post("/login/index").then((res) => { this.$post("/login/index").then((res) => {
const { code, data } = res const { code, data } = res;
if (code == 1) { if (code == 1) {
this.homeStat = Object.assign({},this.homeStat,data.homeStat) this.homeStat = Object.assign({}, this.homeStat, data.homeStat);
console.log(data,"####") console.log(data, "####");
} }
}); });
} },
} },
} };
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.page-home { .page-home {
...@@ -214,7 +231,7 @@ export default { ...@@ -214,7 +231,7 @@ export default {
font-size: 16px; font-size: 16px;
.title { .title {
color: #409EFF; color: #409eff;
margin-bottom: 20px; margin-bottom: 20px;
} }
...@@ -234,20 +251,20 @@ export default { ...@@ -234,20 +251,20 @@ export default {
} }
.cell1:last-child { .cell1:last-child {
border: none border: none;
} }
} }
// 数据标题 // 数据标题
.data_left>.title, .data_left > .title,
.data_right>.title { .data_right > .title {
text-align: center; text-align: center;
font-size: 22px; font-size: 22px;
font-weight: bold; font-weight: bold;
} }
.right_card { .right_card {
background-image: url('~@/assets/images/u162.svg'); background-image: url("~@/assets/images/u162.svg");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% auto; background-size: 100% auto;
background-position: bottom; background-position: bottom;
...@@ -274,7 +291,11 @@ export default { ...@@ -274,7 +291,11 @@ export default {
border-radius: 10px; border-radius: 10px;
padding: 20px 0; padding: 20px 0;
text-align: center; text-align: center;
background: linear-gradient(90deg, rgba(187, 193, 255, 0.3), rgb(235, 235, 235)); background: linear-gradient(
90deg,
rgba(187, 193, 255, 0.3),
rgb(235, 235, 235)
);
cursor: pointer; cursor: pointer;
.icon img { .icon img {
...@@ -302,4 +323,5 @@ export default { ...@@ -302,4 +323,5 @@ export default {
::v-deep .el-card { ::v-deep .el-card {
height: 100%; height: 100%;
}</style> }
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment