diff --git a/ruoyi-ui/src/api/project/surProjectAttendance.js b/ruoyi-ui/src/api/project/surProjectAttendance.js
index 84144c89..5e532458 100644
--- a/ruoyi-ui/src/api/project/surProjectAttendance.js
+++ b/ruoyi-ui/src/api/project/surProjectAttendance.js
@@ -42,3 +42,14 @@ export function delSurProjectAttendance(id) {
method: 'delete'
})
}
+
+
+
+// 查询当前出勤记录
+export function selectByDate(data) {
+ return request({
+ url: '/project/surProjectAttendance/selectByDate',
+ method: 'post',
+ data:data
+ })
+}
diff --git a/ruoyi-ui/src/store/getters.js b/ruoyi-ui/src/store/getters.js
index 8adb1b65..6de9f893 100644
--- a/ruoyi-ui/src/store/getters.js
+++ b/ruoyi-ui/src/store/getters.js
@@ -8,6 +8,7 @@ const getters = {
token: state => state.user.token,
avatar: state => state.user.avatar,
name: state => state.user.name,
+ dept:state=>state.user.dept,
introduction: state => state.user.introduction,
roles: state => state.user.roles,
permissions: state => state.user.permissions,
diff --git a/ruoyi-ui/src/store/modules/user.js b/ruoyi-ui/src/store/modules/user.js
index e51638d8..ba166675 100644
--- a/ruoyi-ui/src/store/modules/user.js
+++ b/ruoyi-ui/src/store/modules/user.js
@@ -6,6 +6,7 @@ const user = {
token: getToken(),
name: '',
avatar: '',
+ dept:null,
roles: [],
permissions: []
},
@@ -25,6 +26,9 @@ const user = {
},
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
+ },
+ SET_DEPT: (state, dept) => {
+ state.dept = dept
}
},
@@ -36,7 +40,7 @@ const user = {
const code = userInfo.code
const uuid = userInfo.uuid
return new Promise((resolve, reject) => {
- login(username, password, code, uuid).then(res => {
+ login(username, password, code, uuid).then(res => {
setToken(res.token)
commit('SET_TOKEN', res.token)
resolve()
@@ -49,7 +53,7 @@ const user = {
// 获取用户信息
GetInfo({ commit, state }) {
return new Promise((resolve, reject) => {
- getInfo().then(res => {
+ getInfo().then(res => {
const user = res.user
const avatar = (user.avatar == "" || user.avatar == null) ? require("@/assets/images/profile.png") : process.env.VUE_APP_BASE_API + user.avatar;
if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组
@@ -59,6 +63,7 @@ const user = {
commit('SET_ROLES', ['ROLE_DEFAULT'])
}
commit('SET_NAME', user.userName)
+ commit("SET_DEPT",user.dept);
commit('SET_AVATAR', avatar)
resolve(res)
}).catch(error => {
@@ -72,6 +77,7 @@ const user = {
return new Promise((resolve, reject) => {
logout(state.token).then(() => {
commit('SET_TOKEN', '')
+ commit("SET_DEPT",null);
commit('SET_ROLES', [])
commit('SET_PERMISSIONS', [])
removeToken()
diff --git a/ruoyi-ui/src/views/project/surProject/index.vue b/ruoyi-ui/src/views/project/surProject/index.vue
index 0755a4d2..ccc92ae6 100644
--- a/ruoyi-ui/src/views/project/surProject/index.vue
+++ b/ruoyi-ui/src/views/project/surProject/index.vue
@@ -216,7 +216,7 @@
项目特种人员
项目出勤记录
+ v-hasPermi="['project:surProjectAttendance:add']">今日出勤
删除项目
@@ -473,6 +473,7 @@
size="50%"
:visible.sync="projectSpecialDrawerVisible"
:form-data="formData">
+
@@ -486,11 +487,12 @@ import buildNodeDrawer from '../surBuildNode/buildNodeDrawer.vue'
import workTrainDrawer from '../../work/workTrain/workTrainDrawer.vue'
import emergencyDrillDrawer from '../../work/emergencyDrill/emergencyDrillDrawer.vue'
import surProjectSpecialDrawer from '../surProjectSpecial/surProjectSpecialDrawer.vue'
+import attendanceDrawer from '../surProjectAttendance/attendanceDrawer.vue'
export default {
name: "SurProject",
components:{
- ProjectScheduleDlg,projectUserInfoDrawer,BaiduMap,AssessDrawer,buildNodeDrawer,workTrainDrawer,emergencyDrillDrawer,surProjectSpecialDrawer
+ attendanceDrawer, ProjectScheduleDlg,projectUserInfoDrawer,BaiduMap,AssessDrawer,buildNodeDrawer,workTrainDrawer,emergencyDrillDrawer,surProjectSpecialDrawer
},
dicts: ['sys_check_state','sur_project_xmjd', 'project_build_type', 'sys_common_isdel', 'project_category','project_level','sur_project_weight'],
data() {
@@ -710,6 +712,9 @@ export default {
case "handleProjectSpecial":
this.handleProjectSpecial(row);
break;
+ case "handleProjectAttendance":
+ this.$refs.attDrawer.show(row);
+ break;
default:
break;
}
diff --git a/ruoyi-ui/src/views/project/surProject/myIndex.vue b/ruoyi-ui/src/views/project/surProject/myIndex.vue
index 58481a7e..8d3ff0da 100644
--- a/ruoyi-ui/src/views/project/surProject/myIndex.vue
+++ b/ruoyi-ui/src/views/project/surProject/myIndex.vue
@@ -123,10 +123,12 @@
进度管理
季度考核管理
计划节点管理
+ 今日出勤
+
@@ -135,11 +137,12 @@ import { listSurProject} from "@/api/project/surProject";
import ProjectScheduleDlg from '../surProjectSchedule/ProjectScheduleDlg.vue'
import AssessDrawer from '../surProjectQuarterlyAssess/assessDrawer.vue'
import buildNodeDrawer from '../surBuildNode/buildNodeDrawer.vue'
+import attendanceDrawer from '../surProjectAttendance/attendanceDrawer.vue'
export default {
dicts: ['sys_check_state','sur_project_xmjd', 'project_build_type', 'sys_common_isdel', 'project_category','project_level','sur_project_weight'],
name: 'RuoyiUiMyIndex',
components:{
- ProjectScheduleDlg,AssessDrawer,buildNodeDrawer
+ ProjectScheduleDlg,AssessDrawer,buildNodeDrawer,attendanceDrawer
},
data() {
return {
@@ -154,6 +157,9 @@ export default {
},
methods: {
+ doPrjAttendance(){
+ this.$refs.attDrawer.show(this.prj);
+ },
getWeight(v){
let tmps=this.dict.type.sur_project_weight.filter(d=>d.value==v);
return tmps.length>0?tmps[0].label:'';
diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java
index 69e31d9c..87906594 100644
--- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java
+++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectController.java
@@ -55,14 +55,14 @@ public class ProjectController {
* @return
*/
@GetMapping("getProgressProjects")
- public AjaxResult getProgressProjects(){
- String key="bgscreen_prj_getProgressProjects";
+ public AjaxResult getProgressProjects(long deptId){
+ String key="bgscreen_prj_getProgressProjects_"+deptId;
Object obj=redisCache.getCacheObject(key);
if(obj!=null){
return AjaxResult.success(obj);
}
- List list= isurProjectService.selectProgressProjects();
+ List list= isurProjectService.selectProgressProjects(deptId);
redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES);
return AjaxResult.success(list);
}
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/controller/SurProjectWorkAttendanceController.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/controller/SurProjectWorkAttendanceController.java
index 73d21ca3..db2d92b5 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/controller/SurProjectWorkAttendanceController.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/controller/SurProjectWorkAttendanceController.java
@@ -2,6 +2,8 @@ package com.yanzhu.jh.project.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.common.utils.file.ImageUtils;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -101,4 +103,10 @@ public class SurProjectWorkAttendanceController extends BaseController
{
return toAjax(surProjectWorkAttendanceService.deleteSurProjectWorkAttendanceByIds(ids));
}
+
+ @PreAuthorize("@ss.hasPermi('project:surProjectAttendance:query')")
+ @PostMapping("/selectByDate")
+ public AjaxResult selectByDate(@RequestBody SurProjectWorkAttendance surProjectWorkAttendance){
+ return AjaxResult.success(surProjectWorkAttendanceService.selectByDate(surProjectWorkAttendance));
+ }
}
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java
index c6cc5c3c..7a3ab7a6 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectMapper.java
@@ -74,7 +74,7 @@ public interface SurProjectMapper
*/
public List groupByLevel(SurProject surProject);
- public List selectProgressProjects();
+ public List selectProgressProjects(long deptId);
public List groupByProjectCategory();
}
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectWorkAttendanceMapper.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectWorkAttendanceMapper.java
index dc39c6e9..7776c727 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectWorkAttendanceMapper.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectWorkAttendanceMapper.java
@@ -58,4 +58,6 @@ public interface SurProjectWorkAttendanceMapper
* @return 结果
*/
public int deleteSurProjectWorkAttendanceByIds(Long[] ids);
+
+ public List selectByDate(SurProjectWorkAttendance surProjectWorkAttendance);
}
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java
index 5470c053..4bef261f 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectService.java
@@ -59,7 +59,7 @@ public interface ISurProjectService
*/
public int deleteSurProjectById(Long id);
- public List selectProgressProjects();
+ public List selectProgressProjects(long deptId);
public List groupByProjectCategory();
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectWorkAttendanceService.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectWorkAttendanceService.java
index 7f2ccab3..35f135f2 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectWorkAttendanceService.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectWorkAttendanceService.java
@@ -58,4 +58,6 @@ public interface ISurProjectWorkAttendanceService
* @return 结果
*/
public int deleteSurProjectWorkAttendanceById(Long id);
+
+ public List selectByDate(SurProjectWorkAttendance surProjectWorkAttendance);
}
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java
index 8bee8f6b..87e7be06 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectServiceImpl.java
@@ -96,8 +96,8 @@ public class SurProjectServiceImpl implements ISurProjectService
}
@Override
- public List selectProgressProjects() {
- return surProjectMapper.selectProgressProjects();
+ public List selectProgressProjects(long deptId) {
+ return surProjectMapper.selectProgressProjects(deptId);
}
@Override
diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectWorkAttendanceServiceImpl.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectWorkAttendanceServiceImpl.java
index 2afbd003..2d1b5932 100644
--- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectWorkAttendanceServiceImpl.java
+++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectWorkAttendanceServiceImpl.java
@@ -95,4 +95,9 @@ public class SurProjectWorkAttendanceServiceImpl implements ISurProjectWorkAtten
{
return surProjectWorkAttendanceMapper.deleteSurProjectWorkAttendanceById(id);
}
+
+ @Override
+ public List selectByDate(SurProjectWorkAttendance surProjectWorkAttendance) {
+ return surProjectWorkAttendanceMapper.selectByDate(surProjectWorkAttendance);
+ }
}
diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml
index 3cb72a5e..94405973 100644
--- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml
+++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectBuildNodeDataMapper.xml
@@ -26,6 +26,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
+
@@ -47,7 +49,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select * from (
- SELECT a.id, node_id, project_id, start_date, end_date, STATUS, a.remark, files, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time ,node_text,node_lvl
+ SELECT a.id, node_id, project_id, start_date, end_date,plan_start_date,plan_end_date, STATUS, a.remark, files, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time ,node_text,node_lvl
FROM sur_project_build_node_data a,base_build_node b WHERE a.node_id=b.id
) sur_project_build_node_data
diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml
index 120c5898..cf7c28c6 100644
--- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml
+++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectMapper.xml
@@ -303,9 +303,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
) a RIGHT JOIN sys_dict_data b ON a.dict_value=b.dict_value WHERE b.dict_type='project_level' ORDER BY cnt DESC
-