处理请假的幂等问题
This commit is contained in:
parent
4046a07ca7
commit
9de61513b7
@ -120,6 +120,11 @@ public class ApproveStatusLeaveExchangeProcessor implements AttendanceApproveSta
|
|||||||
// }
|
// }
|
||||||
rzLeaveDetail.setRemarks("钉钉"+tag);
|
rzLeaveDetail.setRemarks("钉钉"+tag);
|
||||||
rzLeaveDetail.setProcessInstanceId(processInstanceId);
|
rzLeaveDetail.setProcessInstanceId(processInstanceId);
|
||||||
|
//没查到原因, 一直出现多个数据, 做个幂等数据处理
|
||||||
|
if(getIRzLeaveDetailService().checkExistsRzLeaveDetail(rzLeaveDetail).compareTo(0l)>0){
|
||||||
|
log.error("当前请假信息已经记录, 不需要继续进行持久化");
|
||||||
|
return;
|
||||||
|
}
|
||||||
getIRzLeaveDetailService().insertRzLeaveDetail(rzLeaveDetail);
|
getIRzLeaveDetailService().insertRzLeaveDetail(rzLeaveDetail);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -120,10 +120,6 @@ public class MonthlySalaryStrategyExchangeProcessor implements SalaryCalculation
|
|||||||
// rzSalaryDetail.setMonthSalary(rzSalaryDetail.getMonthSalary().add(gs));
|
// rzSalaryDetail.setMonthSalary(rzSalaryDetail.getMonthSalary().add(gs));
|
||||||
rzSalaryDetail.setBjAmount(gs);
|
rzSalaryDetail.setBjAmount(gs);
|
||||||
}
|
}
|
||||||
if(sysStaff.getName().equals("史国臣")){
|
|
||||||
System.out.println("11111");
|
|
||||||
}
|
|
||||||
|
|
||||||
BigDecimal basic = new BigDecimal("0");
|
BigDecimal basic = new BigDecimal("0");
|
||||||
Long basicHour = 0l;
|
Long basicHour = 0l;
|
||||||
for (Long type: ParamUtils.getBasicVacation()) {
|
for (Long type: ParamUtils.getBasicVacation()) {
|
||||||
|
|||||||
@ -37,6 +37,8 @@ public interface IRzLeaveDetailService
|
|||||||
*/
|
*/
|
||||||
public AjaxResult insertRzLeaveDetail(RzLeaveDetail rzLeaveDetail);
|
public AjaxResult insertRzLeaveDetail(RzLeaveDetail rzLeaveDetail);
|
||||||
|
|
||||||
|
public Long checkExistsRzLeaveDetail(RzLeaveDetail rzLeaveDetail);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改请假管理详情
|
* 修改请假管理详情
|
||||||
*
|
*
|
||||||
|
|||||||
@ -101,6 +101,11 @@ public class RzLeaveDetailServiceImpl extends ServiceImpl<RzLeaveDetailMapper, R
|
|||||||
return buildData(String.valueOf(rzLeaveDetail.getType()), rzLeave, rzLeaveDetail, rzLeaveDetail.getLeaveHour(), true);
|
return buildData(String.valueOf(rzLeaveDetail.getType()), rzLeave, rzLeaveDetail, rzLeaveDetail.getLeaveHour(), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long checkExistsRzLeaveDetail(RzLeaveDetail rzLeaveDetail) {
|
||||||
|
return count(new LambdaQueryWrapper<RzLeaveDetail>().select(RzLeaveDetail::getId).eq(RzLeaveDetail::getLeaveId, rzLeaveDetail.getLeaveId()).eq(RzLeaveDetail::getProcessInstanceId, rzLeaveDetail.getProcessInstanceId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public AjaxResult buildData(String type, RzLeave rzLeave, RzLeaveDetail rzLeaveDetail, Integer holidayHour, Boolean isTs){
|
public AjaxResult buildData(String type, RzLeave rzLeave, RzLeaveDetail rzLeaveDetail, Integer holidayHour, Boolean isTs){
|
||||||
switch (type){
|
switch (type){
|
||||||
|
|||||||
@ -169,9 +169,8 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
||||||
sysStaff.setStatus(Constants.JOB_STATIS_1);
|
sysStaff.setStatus(Constants.JOB_STATIS_1);
|
||||||
}else if(sysStaff.getRegularDate().after(DateUtils.getNowDate())){
|
}else if(sysStaff.getRegularDate().after(DateUtils.getNowDate())){
|
||||||
sysStaff.setStatus(Constants.JOB_STATIS_0);
|
sysStaff.setStatus(Constants.JOB_STATIS_0);
|
||||||
}
|
}
|
||||||
sysStaff.setStatus(Constants.JOB_STATIS_0);
|
|
||||||
sysStaff.setCreateTime(DateUtils.getNowDate());
|
sysStaff.setCreateTime(DateUtils.getNowDate());
|
||||||
sysStaff.setCreateBy(SecurityUtils.getUsername());
|
sysStaff.setCreateBy(SecurityUtils.getUsername());
|
||||||
sysStaff.setDelFlag(Constants.DELETE_FLAG_0);
|
sysStaff.setDelFlag(Constants.DELETE_FLAG_0);
|
||||||
@ -403,7 +402,7 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
if(sysStaff.getQuitDate().getTime() < DateUtils.getNowDate().getTime()){
|
if(sysStaff.getQuitDate().getTime() < DateUtils.getNowDate().getTime()){
|
||||||
//记录原始状态
|
//记录原始状态
|
||||||
String oldStatus = sysStaff.getStatus();
|
String oldStatus = sysStaff.getStatus();
|
||||||
sysStaff.setStatus("-1");
|
sysStaff.setStatus(Constants.JOB_STATIS_11);
|
||||||
int i = getBaseMapper().updateSysStaff(sysStaff);
|
int i = getBaseMapper().updateSysStaff(sysStaff);
|
||||||
if(i < 1){
|
if(i < 1){
|
||||||
return AjaxResult.error();
|
return AjaxResult.error();
|
||||||
@ -435,6 +434,8 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
|
|
||||||
//检查转正日期, 是否初始化为试用期
|
//检查转正日期, 是否初始化为试用期
|
||||||
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
||||||
|
sysStaff.setStatus(Constants.JOB_STATIS_1);
|
||||||
|
}else if(sysStaff.getRegularDate().after(DateUtils.getNowDate())){
|
||||||
sysStaff.setStatus(Constants.JOB_STATIS_0);
|
sysStaff.setStatus(Constants.JOB_STATIS_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -909,7 +910,7 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
for (SysStaff sysStaff : params_list) {
|
for (SysStaff sysStaff : params_list) {
|
||||||
//判断员工是否离职
|
//判断员工是否离职
|
||||||
if(StringUtils.isNotNull(sysStaff.getQuitDate()) && sysStaff.getQuitDate().getTime() < DateUtils.getNowDate().getTime()){
|
if(StringUtils.isNotNull(sysStaff.getQuitDate()) && sysStaff.getQuitDate().getTime() < DateUtils.getNowDate().getTime()){
|
||||||
sysStaff.setStatus("-1");
|
sysStaff.setStatus(Constants.JOB_STATIS_11);
|
||||||
getBaseMapper().updateSysStaff(sysStaff);
|
getBaseMapper().updateSysStaff(sysStaff);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -925,7 +926,7 @@ public class SysStaffServiceImpl extends ServiceImpl<SysStaffMapper, SysStaff> i
|
|||||||
|
|
||||||
//if(DateUtils.addMonths(sysStaff.getEmploymentDate(), Integer.valueOf(String.valueOf(sysStaff.getWorkerTerm()))).getTime() < DateUtils.getNowDate().getTime()){
|
//if(DateUtils.addMonths(sysStaff.getEmploymentDate(), Integer.valueOf(String.valueOf(sysStaff.getWorkerTerm()))).getTime() < DateUtils.getNowDate().getTime()){
|
||||||
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
if(sysStaff.getRegularDate().before(DateUtils.getNowDate())){
|
||||||
sysStaff.setStatus("1");
|
sysStaff.setStatus(Constants.JOB_STATIS_1);
|
||||||
}
|
}
|
||||||
getBaseMapper().updateSysStaff(sysStaff);
|
getBaseMapper().updateSysStaff(sysStaff);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user