From 5978c46fc0ec07426797f2c4957226e5976ef470 Mon Sep 17 00:00:00 2001 From: haha Date: Fri, 22 Mar 2024 22:44:32 +0800 Subject: [PATCH 1/2] update code --- .../domain/SurProjectAttendanceData.java | 4 + .../jh/project/task/AttendanceJgwTask.java | 1 + .../SurProjectAttendanceDataMapper.xml | 142 ++++++++++++------ 3 files changed, 98 insertions(+), 49 deletions(-) diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java index 1628fddb..ef817b43 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java @@ -1,5 +1,6 @@ package com.yanzhu.jh.project.domain; +import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson2.JSONObject; @@ -16,6 +17,9 @@ import com.ruoyi.common.core.domain.BaseEntity; */ public class SurProjectAttendanceData extends BaseEntity { + public SurProjectAttendanceData(){ + this.year= DateTime.now().year(); + } private static final long serialVersionUID = 1L; private int year; diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/task/AttendanceJgwTask.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/task/AttendanceJgwTask.java index 83bd21ad..fef0b3e3 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/task/AttendanceJgwTask.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/task/AttendanceJgwTask.java @@ -78,6 +78,7 @@ public class AttendanceJgwTask { public static void main(String[] args){ String d="sxyzxx2024suc"; System.out.println(Base64.encode(d)); + System.out.println(DateTime.now().year()); String appid="6a6f24fe35b04ee0bcf31cfb46ed1051"; String secret="c3h5enh4MjAyNHN1Yw=="; diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceDataMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceDataMapper.xml index 1d94ce7d..5857000c 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceDataMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceDataMapper.xml @@ -8,45 +8,53 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + - - + + + + + + + + + + + + + + + - - - - - - - - - + select * FROM ( - select a.*,b.project_id,b.sub_dept_id,c.companyTypeId - from sur_project_attendance_data a,sur_project_attendance_cfg b,view_sur_project_attendance_group c - where a.cfgid=b.id and a.companyId=c.companyId + select a.* + from sur_project_attendance_data_${year} a ) sur_project_attendance_data - - insert into sur_project_attendance_data + + insert into sur_project_attendance_data_${year} cfgid, app_id, + projectId, + projectName, + deptId, + deptName, vendors_code, serverid, workerId, - attendance_type, - attendance_time, + workerName, identification, + workerPhoto, + workerGender, + birthDate, + ethnic, + nativePlace, + phone, + workTypeName, + specWorkType, + groupName, + companyTypeId, + companyName, + attendance_time, + attendance_out_time, + scanPhoto, teamId, workTypeCode, companyId, vendorId, - projectType, device_code, - work_point_id, - scanPhoto, - other, - state, - remark, is_del, create_by, create_time, update_by, update_time, + remark, #{cfgid}, #{appId}, + #{projectId}, + #{projectName}, + #{deptId}, + #{deptName}, #{vendorsCode}, #{serverid}, #{workerId}, - #{attendanceType}, - #{attendanceTime}, + #{workerName}, #{identification}, + #{workerPhoto}, + #{workerGender}, + #{birthDate}, + #{ethnic}, + #{nativePlace}, + #{phone}, + #{workTypeName}, + #{specWorkType}, + #{groupName}, + #{companyTypeId}, + #{companyName}, + #{attendanceTime}, + #{attendanceOutTime}, + #{scanPhoto}, #{teamId}, #{workTypeCode}, #{companyId}, #{vendorId}, - #{projectType}, #{deviceCode}, - #{workPointId}, - #{scanPhoto}, - #{other}, - #{state}, - #{remark}, #{isDel}, #{createBy}, #{createTime}, #{updateBy}, #{updateTime}, + #{remark}, - - update sur_project_attendance_data + + update sur_project_attendance_data_${year} cfgid = #{cfgid}, app_id = #{appId}, + projectId = #{projectId}, + projectName = #{projectName}, + deptId = #{deptId}, + deptName = #{deptName}, vendors_code = #{vendorsCode}, serverid = #{serverid}, workerId = #{workerId}, - attendance_type = #{attendanceType}, - attendance_time = #{attendanceTime}, + workerName = #{workerName}, identification = #{identification}, + workerPhoto = #{workerPhoto}, + workerGender = #{workerGender}, + birthDate = #{birthDate}, + ethnic = #{ethnic}, + nativePlace = #{nativePlace}, + phone = #{phone}, + workTypeName = #{workTypeName}, + specWorkType = #{specWorkType}, + groupName = #{groupName}, + companyTypeId = #{companyTypeId}, + companyName = #{companyName}, + attendance_time = #{attendanceTime}, + attendance_out_time = #{attendanceOutTime}, + scanPhoto = #{scanPhoto}, teamId = #{teamId}, workTypeCode = #{workTypeCode}, companyId = #{companyId}, vendorId = #{vendorId}, - projectType = #{projectType}, device_code = #{deviceCode}, - work_point_id = #{workPointId}, - scanPhoto = #{scanPhoto}, - other = #{other}, - state = #{state}, - remark = #{remark}, is_del = #{isDel}, create_by = #{createBy}, create_time = #{createTime}, update_by = #{updateBy}, update_time = #{updateTime}, + remark = #{remark}, where id = #{id} - delete from sur_project_attendance_data where id = #{id} + delete from sur_project_attendance_data_${year} where id = #{id} - delete from sur_project_attendance_data where id in + delete from sur_project_attendance_data_${year} where id in #{id} - delete from sur_project_attendance_data where CONCAT(app_id,'-',serverid,'-',workerId) in + delete from sur_project_attendance_data_${year} where CONCAT(app_id,'-',serverid,'-',workerId) in #{item} - insert into sur_project_attendance_data( id, cfgid, app_id, vendors_code, serverid, workerId, attendance_type, attendance_time, identification, teamId, workTypeCode, companyId, vendorId, projectType, device_code, work_point_id, scanPhoto, other, state, remark, is_del, create_by, create_time, update_by, update_time) values + insert into sur_project_attendance_data_${year}( id, cfgid, app_id, vendors_code, serverid, workerId, attendance_type, attendance_time, identification, teamId, workTypeCode, companyId, vendorId, projectType, device_code, work_point_id, scanPhoto, other, state, remark, is_del, create_by, create_time, update_by, update_time) values ( #{item.id}, #{item.cfgid},#{item.appId}, #{item.vendorsCode}, #{item.serverid}, #{item.workerId}, #{item.attendanceType}, #{item.attendanceTime}, #{item.identification}, #{item.teamId}, #{item.workTypeCode}, #{item.companyId}, #{item.vendorId}, #{item.projectType}, #{item.deviceCode}, #{item.workPointId}, #{item.scanPhoto}, #{item.other}, #{item.state}, #{item.remark}, #{item.isDel}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}) \ No newline at end of file From e5d1c148424b2d882483a4e71aa43d1a7ca06665 Mon Sep 17 00:00:00 2001 From: haha Date: Fri, 22 Mar 2024 23:44:12 +0800 Subject: [PATCH 2/2] update code --- .../domain/SurProjectAttendanceCfg.java | 9 +++ .../domain/SurProjectAttendanceData.java | 6 +- .../mapper/SurProjectAttendanceCfgMapper.java | 2 + .../SurProjectAttendanceDataServiceImpl.java | 73 ++++++++++++++++++- .../project/SurProjectAttendanceCfgMapper.xml | 10 +++ .../SurProjectAttendanceDataMapper.xml | 2 +- 6 files changed, 96 insertions(+), 6 deletions(-) diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceCfg.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceCfg.java index d5473c9c..f7b1d14d 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceCfg.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceCfg.java @@ -42,6 +42,15 @@ public class SurProjectAttendanceCfg extends BaseEntity @Excel(name = "状态") private Long state; + private String deptName; + + public String getDeptName() { + return deptName; + } + + public void setDeptName(String deptName) { + this.deptName = deptName; + } private String projectName; private String unitName; diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java index ef817b43..5cda8fcc 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/domain/SurProjectAttendanceData.java @@ -64,11 +64,11 @@ public class SurProjectAttendanceData extends BaseEntity this.workerPhoto = workerPhoto; } - public Integer getWorkerGender() { + public Long getWorkerGender() { return workerGender; } - public void setWorkerGender(Integer workerGender) { + public void setWorkerGender(Long workerGender) { this.workerGender = workerGender; } @@ -157,7 +157,7 @@ public class SurProjectAttendanceData extends BaseEntity @Excel(name = "照片") private String workerPhoto; @Excel(name = "性别0:男 1:女") - private Integer workerGender; + private Long workerGender; @Excel(name = "出生日期时间戳") private Long birthDate; @Excel(name = "所属班组") diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceCfgMapper.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceCfgMapper.java index 0cb2691a..a5d827d0 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceCfgMapper.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceCfgMapper.java @@ -58,4 +58,6 @@ public interface SurProjectAttendanceCfgMapper * @return 结果 */ public int deleteSurProjectAttendanceCfgByIds(Long[] ids); + + public List selectSurProjectAttendanceCfgListForAllInfo(SurProjectAttendanceCfg where); } diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceDataServiceImpl.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceDataServiceImpl.java index 0c3153e4..8682959a 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceDataServiceImpl.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceDataServiceImpl.java @@ -1,8 +1,16 @@ package com.yanzhu.jh.project.service.impl; import java.util.List; + +import cn.hutool.core.date.DateTime; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; +import com.yanzhu.jh.project.domain.SurProjectAttendanceCfg; +import com.yanzhu.jh.project.domain.SurProjectAttendanceGroup; +import com.yanzhu.jh.project.domain.SurProjectAttendanceUser; +import com.yanzhu.jh.project.mapper.SurProjectAttendanceCfgMapper; +import com.yanzhu.jh.project.mapper.SurProjectAttendanceGroupMapper; +import com.yanzhu.jh.project.mapper.SurProjectAttendanceUserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.yanzhu.jh.project.mapper.SurProjectAttendanceDataMapper; @@ -21,6 +29,16 @@ public class SurProjectAttendanceDataServiceImpl implements ISurProjectAttendanc @Autowired private SurProjectAttendanceDataMapper surProjectAttendanceDataMapper; + @Autowired + private SurProjectAttendanceUserMapper surProjectAttendanceUserMapper; + + @Autowired + private SurProjectAttendanceGroupMapper surProjectAttendanceGroupMapper; + + @Autowired + private SurProjectAttendanceCfgMapper surProjectAttendanceCfgMapper; + + /** * 查询劳务实名制管理 * @@ -136,16 +154,67 @@ public class SurProjectAttendanceDataServiceImpl implements ISurProjectAttendanc SurProjectAttendanceData where=new SurProjectAttendanceData(); where.setVendorsCode(sdata.getVendorsCode()); where.setCfgid(sdata.getCfgid()); - where.setServerid(sdata.getServerid()); + where.setServerid(sdata.getWorkerId()); + where.setAttendanceTime(DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", DateTime.now())); List list=selectSurProjectAttendanceDataListEx(where); if(list.size()==0){ + //设置考勤其它参数 + //查询人员信息 + SurProjectAttendanceUser userWhere=new SurProjectAttendanceUser(); + userWhere.setWorkerId(sdata.getWorkerId()); + List uList= surProjectAttendanceUserMapper.selectSurProjectAttendanceUserList(userWhere); + if(uList.size()==0){ + return; + } + SurProjectAttendanceUser user=uList.get(0); + sdata.setWorkerName(user.getName()); + sdata.setWorkerPhoto(user.getPhoto()); + sdata.setWorkerGender(user.getGender());; + sdata.setGroupName(user.getGroupName()); + sdata.setWorkTypeName(user.getWorkTypeName()); + sdata.setEthnic(user.getEthnic()); + sdata.setNativePlace(user.getNativePlace()); + sdata.setPhone(user.getPhone()); + sdata.setSpecWorkType(user.getSpecWorkType()); + //查询分组信息 + SurProjectAttendanceGroup groupWhere=new SurProjectAttendanceGroup(); + groupWhere.setCfgid(sdata.getCfgid()); + groupWhere.setCompanyId(sdata.getCompanyId()); + List gList=surProjectAttendanceGroupMapper.selectSurProjectAttendanceGroupList(groupWhere); + if(gList.size()==0){ + return; + } + SurProjectAttendanceGroup group=gList.get(0); + sdata.setCompanyName(group.getCompanyName()); + sdata.setCompanyTypeId(group.getCompanyTypeId()); + //查询华筑的分组信息 + if("huazhu".equals(sdata.getVendorsCode())){ + sdata.setCompanyTypeId(getHuazhuCompanyTypeId(group.getCompanyName()));//获取华筑的分包商类型 + } + //查询项目部门信息 + SurProjectAttendanceCfg cfgWhere=new SurProjectAttendanceCfg(); + cfgWhere.setId(sdata.getCfgid()); + List cfgList=surProjectAttendanceCfgMapper.selectSurProjectAttendanceCfgListForAllInfo(cfgWhere); + if(cfgList.size()==0){ + return; + } + SurProjectAttendanceCfg cfg=cfgList.get(0); + sdata.setProjectId(cfg.getProjectId()); + sdata.setDeptId(cfg.getSubDeptId()); + sdata.setProjectName(cfg.getProjectName()); + sdata.setDeptName(cfg.getDeptName()); insertSurProjectAttendanceData(sdata); }else{ - sdata.setId(list.get(0).getId()); + SurProjectAttendanceData upData=list.get(0); + upData.setAttendanceOutTime(sdata.getAttendanceTime()); updateSurProjectAttendanceData(sdata); } } + private String getHuazhuCompanyTypeId(String groupName) { + return ""; + } + @Override public String getLastServerId(SurProjectAttendanceData where) { return ""+surProjectAttendanceDataMapper.getLastServerId(where); diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceCfgMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceCfgMapper.xml index af682080..ef8314a2 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceCfgMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceCfgMapper.xml @@ -19,6 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -45,6 +46,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and is_del = #{isDel} + + +