Browse Source

修改考勤相关接口

tall3
ma 4 years ago
parent
commit
79c0702e96
  1. 2
      common/src/main/java/com/ccsens/common/bean/dto/CClockingInDto.java
  2. 13
      common/src/main/java/com/ccsens/common/bean/vo/CClockingInVo.java
  3. 7
      common/src/main/java/com/ccsens/common/persist/dao/ProClockingInDao.java
  4. 26
      common/src/main/java/com/ccsens/common/service/ClockingInService.java
  5. 16
      common/src/main/resources/mapper_dao/ProClockingInDao.xml

2
common/src/main/java/com/ccsens/common/bean/dto/CClockingInDto.java

@ -56,7 +56,7 @@ public class CClockingInDto {
@NotNull(message = "项目信息错误")
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("审批类型(0-修改,1-驳回)")
@ApiModelProperty("审批类型(0-修改,1-驳回,2审核通过)")
private Byte type;
@ApiModelProperty("早打卡时间")
private Long morning;

13
common/src/main/java/com/ccsens/common/bean/vo/CClockingInVo.java

@ -44,6 +44,10 @@ public class CClockingInVo {
private Long checkerId;
@ApiModelProperty("检查人名字")
private String checkerName;
@ApiModelProperty("上次检查人id")
private Long lastCheckerId;
@ApiModelProperty("上次检查人名字")
private String lastCheckerName;
@ApiModelProperty("打卡人不是不是我(0-否,1-是)")
private Byte isMine = 0;
@ApiModelProperty("检查人是不是我(0-否,1-是)")
@ -56,4 +60,13 @@ public class CClockingInVo {
@ApiModelProperty("文件路径")
private String url;
}
@Data
@ApiModel("上一次检查人")
public static class LastChecker{
@ApiModelProperty("上一次检查人Id")
private Long lastCheckerId;
@ApiModelProperty("上次检查人名字")
private String lastCheckerName;
}
}

7
common/src/main/java/com/ccsens/common/persist/dao/ProClockingInDao.java

@ -28,4 +28,11 @@ public interface ProClockingInDao extends ProClockingInMapper {
* @return 打卡记录
*/
ProClockingIn queryHaveData(@Param("memberId") Long memberId,@Param("time") long currentTimeMillis);
/**
* 查询上一次打卡的检查人
* @param memberId 打卡人id
* @return 上一次检查人的信息
*/
CClockingInVo.LastChecker queryLastChecker(@Param("memberId") Long memberId);
}

26
common/src/main/java/com/ccsens/common/service/ClockingInService.java

@ -144,7 +144,20 @@ public class ClockingInService implements IClockingInService {
}
}
}
return list.stream().distinct().collect(Collectors.toList());
List<CClockingInVo.ClockingInInfo> collect = list.stream().distinct().collect(Collectors.toList());
//查询上次检查人
for (CClockingInVo.ClockingInInfo clockingInInfo : collect) {
if (clockingInInfo.getDateTime().equals(format.format(new Date(System.currentTimeMillis())))) {
for (CClockingInVo.ClockRecord clockRecord : clockingInInfo.getRecordList()) {
CClockingInVo.LastChecker lastChecker = clockingInDao.queryLastChecker(clockRecord.getMemberId());
if (ObjectUtil.isNotNull(lastChecker)) {
clockRecord.setLastCheckerId(lastChecker.getLastCheckerId());
clockRecord.setLastCheckerName(lastChecker.getLastCheckerName());
}
}
}
}
return collect;
}
@Override
@ -224,6 +237,17 @@ public class ClockingInService implements IClockingInService {
}
clockingInDao.updateByPrimaryKeySelective(proClockingIn);
}
//审核通过
if (2 == params.getType()) {
ProClockingIn proClockingIn = new ProClockingIn();
proClockingIn.setId(params.getId());
if (ObjectUtil.isNotNull(params.getMorning())) {
proClockingIn.setMorningStatus((byte)3);
}
if (ObjectUtil.isNotNull(params.getNight())) {
proClockingIn.setNightStatus((byte)3);
}
}
}
@Override

16
common/src/main/resources/mapper_dao/ProClockingInDao.xml

@ -47,4 +47,20 @@
LIMIT 1
</select>
<select id="queryLastChecker" resultType="com.ccsens.common.bean.vo.CClockingInVo$LastChecker">
SELECT
checker_id AS lastCheckerId,
m.`name` AS lastCheckerName
FROM
t_pro_clocking_in AS c
LEFT JOIN t_pro_member AS m ON m.id = c.checker_id
WHERE
c.rec_status = 0
AND m.rec_status = 0
AND c.member_id = #{memberId}
ORDER BY
c.created_at DESC
LIMIT 1
</select>
</mapper>
Loading…
Cancel
Save