Bladeren bron

Merge branch 'master' of http://47.100.37.243:10191/wutt/manHourHousekeeper into master

seyason 2 jaren geleden
bovenliggende
commit
0dcbc0a63d

+ 11 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -80,7 +80,8 @@ public class ReportController {
     private SysFunctionMapper sysFunctionMapper;
     @Resource
     private UserCorpwxTimeMapper userCorpwxTimeMapper;
-
+    @Resource
+    private UserMapper userMapper;
 
     //获取任务相关的日报列表
     @RequestMapping("/getTaskReportList")
@@ -1504,5 +1505,14 @@ public class ReportController {
     public HttpRespMsg correctWorkingTime(String userIds,String startDate,String endDate){
         return reportService.correctWorkingTime(userIds,startDate,endDate);
     }
+
+    /**
+     * 转移日报
+     * @return
+     */
+    @RequestMapping("/moveReport")
+    public HttpRespMsg moveReport(String sourceId,String targetId){
+        return reportService.moveReport(sourceId,targetId,request);
+    }
 }
 

+ 7 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/User.java

@@ -270,6 +270,13 @@ public class User extends Model<User> {
     @TableField("is_mob_first_login")
     private Integer isMobFirstLogin;
 
+    /**
+     * 是否存在日报
+     * 0-否 1-是
+     */
+    @TableField(exist = false)
+    private Integer isExistsReport;
+
 
     @Override
     protected Serializable pkVal() {

+ 2 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ReportService.java

@@ -105,4 +105,6 @@ public interface ReportService extends IService<Report> {
     HttpRespMsg defaultDegree(Integer projectId, HttpServletRequest request);
 
 	HttpRespMsg approveDeptAuditReport(User user, String auditDeptId);
+
+    HttpRespMsg moveReport(String sourceId,String targetId,HttpServletRequest request);
 }

+ 27 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -6661,9 +6661,19 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         List<Map<String,Object>>  list=projectMapper.getWaitingReviewList(stateKey,user.getCompanyId(),userId,start,size,startDate,endDate,departmentId,deptIds);
         WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", user.getCompanyId()));
         for (Map<String, Object> map : list) {
+            Department dept = null;
+            Integer deptId = Integer.valueOf(map.get("deptId").toString());
+            for (Department department : allDeptList) {
+                if (deptId.equals(department.getDepartmentId())){
+                    dept = department;
+                }
+            }
             if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
-                String wxDeptName = map.get("wxDeptId") == null ? "" : map.get("wxDeptId").toString();
+                String wxDeptName = departmentService.getWxDepartment(dept, allDeptList);
                 map.put("departmentName",wxDeptName);
+            }else {
+                String deptName = departmentService.getSupDepartment(dept, allDeptList);
+                map.put("departmentName",deptName);
             }
         }
         long total=projectMapper.findCount(stateKey,user.getCompanyId(),userId,null,null,startDate,endDate,departmentId,deptIds);
@@ -6679,11 +6689,12 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         HttpRespMsg msg = getWaitingReviewList(request, stateKey, userId, null, null,startDate,endDate,null);
         Integer companyId = userMapper.selectById(request.getHeader("token")).getCompanyId();
         WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", companyId));
+        List<Department> allDeptList = departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id", companyId));
         HashMap resultmap= (HashMap) msg.data;
         List<Map<String,Object>> list= (List<Map<String, Object>>) resultmap.get("result");
         List<List<String>> dataList=new ArrayList<>();
-        //String[] s={"人员", "待审核数量"};
-        String[] s={MessageUtils.message("entry.personnel"), MessageUtils.message("entry.quaAud")};
+        //String[] s={"人员","部门","待审核数量"};
+        String[] s={MessageUtils.message("entry.personnel"),MessageUtils.message("excel.department"), MessageUtils.message("entry.quaAud")};
         dataList.add(Arrays.asList(s));
         for (Map<String, Object> map : list) {
             List<String> item=new ArrayList<>();
@@ -6692,6 +6703,19 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             }else {
                 item.add(String.valueOf(map.get("userName")));
             }
+            Department dept = null;
+            Integer deptId = Integer.valueOf(map.get("deptId").toString());
+            for (Department department : allDeptList) {
+                if (deptId.equals(department.getDepartmentId())){
+                    dept = department;
+                }
+            }
+            if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
+                String wxDeptName = departmentService.exportWxDepartment(dept, allDeptList);
+                item.add(wxDeptName);
+            }else {
+                item.add(map.get("departmentName").toString());
+            }
             item.add(String.valueOf(map.get("num")));
             dataList.add(item);
         }

+ 71 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -197,6 +197,8 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
     private CorpwxJobResultMapper corpwxJobResultMapper;
     @Autowired
     RestTemplate restTemplate;
+    @Resource
+    private ReportAuditLogService reportAuditLogService;
 
     @Value(value = "${upload.path}")
     private String path;
@@ -5360,4 +5362,73 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
 
         return msg;
     }
+
+    /**
+     * 转移日报
+     * @return
+     */
+    @Override
+    public HttpRespMsg moveReport(String sourceId,String targetId,HttpServletRequest request) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        //源
+        User sourceUser = userMapper.selectById(sourceId);
+        //目标
+        User targetUser = userMapper.selectById(targetId);
+        //转移日报
+        List<Report> reportList = reportMapper.selectList(new QueryWrapper<Report>().eq("creator_id", sourceId));
+        if (reportList.size() != 0){
+            for (Report report : reportList) {
+                report.setCreatorId(targetUser.getId());
+                report.setDeptId(targetUser.getDepartmentId());
+            }
+            reportService.updateBatchById(reportList);
+        }
+        //转移日报的log
+        List<ReportLog> reportCreatorLogList = reportLogMapper.selectList(new QueryWrapper<ReportLog>().eq("creator_id", sourceId));
+        if (reportCreatorLogList.size() != 0){
+            for (ReportLog log : reportCreatorLogList) {
+                log.setCreatorId(targetUser.getId());
+            }
+            reportLogService.updateBatchById(reportCreatorLogList);
+        }
+
+        List<ReportLog> reportOperatorLogList = reportLogMapper.selectList(new QueryWrapper<ReportLog>().eq("operator_id", sourceId));
+        if (reportCreatorLogList.size() != 0){
+            for (ReportLog log : reportOperatorLogList) {
+                log.setOperatorId(targetUser.getId());
+                String msg = log.getMsg().replace(sourceUser.getName(), targetUser.getName());
+                log.setMsg(msg);
+            }
+            reportLogService.updateBatchById(reportOperatorLogList);
+        }
+
+        List<ReportAlogMembdate> reportAlogMembdateList = reportAlogMembdateMapper.selectList(new QueryWrapper<ReportAlogMembdate>().eq("user_id", sourceId));
+        if (reportAlogMembdateList.size() != 0){
+            for (ReportAlogMembdate alogMembdate : reportAlogMembdateList) {
+                alogMembdate.setUserId(targetUser.getId());
+                alogMembdate.setUserName(targetUser.getName());
+            }
+            reportAlogMembdateService.updateBatchById(reportAlogMembdateList);
+        }
+
+        List<ReportAuditLog> reportAuditLogList = reportAuditLogMapper.selectList(new QueryWrapper<ReportAuditLog>().eq("user_id", sourceId));
+        if (reportAuditLogList.size() != 0){
+            for (ReportAuditLog auditLog : reportAuditLogList) {
+                auditLog.setUserId(targetUser.getId());
+                auditLog.setUserName(targetUser.getName());
+            }
+            reportAuditLogService.updateBatchById(reportAuditLogList);
+        }
+
+        List<ReportLogDetail> reportLogDetailsList = reportLogDetailMapper.selectList(new QueryWrapper<ReportLogDetail>().eq("operator_id",sourceId));
+        if (reportLogDetailsList.size() != 0){
+            for (ReportLogDetail logDetail : reportLogDetailsList) {
+                logDetail.setOperatorId(targetUser.getId());
+                String msg = logDetail.getMsg().replace(sourceUser.getName(), targetUser.getName());
+                logDetail.setMsg(msg);
+            }
+            reportLogDetailService.updateBatchById(reportLogDetailsList);
+        }
+        return httpRespMsg;
+    }
 }

+ 7 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/UserServiceImpl.java

@@ -19,6 +19,7 @@ import me.chanjar.weixin.mp.api.WxMpService;
 import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;
 import me.chanjar.weixin.mp.bean.template.WxMpTemplateData;
 import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;
+import org.apache.commons.collections4.Put;
 import org.apache.commons.io.FileUtils;
 import org.apache.poi.hssf.usermodel.*;
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
@@ -663,7 +664,12 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
             //设置用户的证书列表
             List<UserCert> certList = userCertMapper.selectList(new QueryWrapper<UserCert>().eq("user_id", user.getId()));
             user.setCertList(certList);
-
+            //获取相关日报数量
+            Integer reportCount = reportMapper.selectCount(new QueryWrapper<Report>().eq("creator_id", user.getId()));
+            if (reportCount>0){
+                reportCount = 1;
+            }
+            user.setIsExistsReport(reportCount);
             httpRespMsg.data = user;
         }
         return httpRespMsg;

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml

@@ -924,7 +924,7 @@
     <select id="getWaitingReviewList" resultType="java.util.Map">
         <choose>
             <when test="stateKey==0">
-                SELECT 	dept_manager.name as userName,`user`.corpwx_userid as corpwxUserId,department.department_name as departmentName,department.corpwx_deptid as wxDeptId,COUNT(1) as num
+                SELECT 	dept_manager.name as userName,`user`.corpwx_userid as corpwxUserId,department.department_id as deptId,department.corpwx_deptid as wxDeptId,COUNT(1) as num
                 FROM report AS a
                 left join user on user.id = a.creator_id
                 JOIN project AS b ON a.project_id=b.id
@@ -959,7 +959,7 @@
                 ORDER BY a.create_date desc, a.creator_id asc
             </when>
             <otherwise>
-                SELECT 	u.name as userName,u.corpwx_userid as corpwxUserId,dp.department_name as departmentName,dp.corpwx_deptid as wxDeptId,COUNT(1) as num
+                SELECT 	u.name as userName,u.corpwx_userid as corpwxUserId,dp.department_id as deptId,dp.corpwx_deptid as wxDeptId,COUNT(1) as num
                 FROM report AS a
                 left join user on user.id = a.creator_id
                 JOIN project AS b ON a.project_id=b.id