bug修改提交

This commit is contained in:
方亮 2025-08-29 13:05:34 +08:00
parent 4d3d900f2d
commit 44b6a5752b
4 changed files with 93 additions and 54 deletions

View File

@ -47,7 +47,7 @@ public interface PmWorkerMapper {
* @param idNumber * @param idNumber
* @return * @return
*/ */
PmWorker getWorkerByNumber(String idNumber); PmWorker getWorkerByNumber(@Param("idNumber") String idNumber, @Param("isActive") Integer isActive);
/** /**
* 插入入场实时数据信息 * 插入入场实时数据信息
@ -120,4 +120,12 @@ public interface PmWorkerMapper {
* @return * @return
*/ */
PmWorker getWorkerByPhone(@Param("phone") String phone,@Param("idNumber") String idNumber); PmWorker getWorkerByPhone(@Param("phone") String phone,@Param("idNumber") String idNumber);
/**
* 更新人员状态
*
* @param id
* @param isActive
*/
void updateIsActiveById(@Param("id") Integer id, @Param("isActive") int isActive);
} }

View File

@ -54,7 +54,7 @@ public class PmWorkerExitServiceImpl implements PmWorkerExitService {
//查询合同工资卡是否齐全 //查询合同工资卡是否齐全
List<MapBeanVo> list = mapper.getContractIdAndWageCard(record.getWorkerId()); List<MapBeanVo> list = mapper.getContractIdAndWageCard(record.getWorkerId());
if(Integer.parseInt(list.get(0).getValue())>1 && Integer.parseInt(list.get(1).getValue())>1){ if(Integer.parseInt(list.get(0).getValue())>0 && Integer.parseInt(list.get(1).getValue())>0){
//删除合同 //删除合同
int m = contractService.deleteByWorkerId(record.getWorkerId()); int m = contractService.deleteByWorkerId(record.getWorkerId());
//删除实时在场 //删除实时在场

View File

@ -75,8 +75,22 @@ public class PmWorkerServiceImpl implements PmWorkerService{
if(worker2 != null && worker2.getName() != null){ if(worker2 != null && worker2.getName() != null){
return new AjaxResult(500, worker2.getName()+"施工人员在失信人员名单,无法入场"); return new AjaxResult(500, worker2.getName()+"施工人员在失信人员名单,无法入场");
} }
//如果是以前被删除的人员自动恢复以前的数据
PmWorker delWorker = mapper.getWorkerByNumber(record.getIdNumber(), 0);
if(delWorker != null && delWorker.getId() != null){
// 添加员工时判断员工编号是否已存在 // 添加员工时判断员工编号是否已存在
PmWorker worker = mapper.getWorkerByNumber(record.getIdNumber()); PmWorker worker3 = mapper.getWorkerByPhone(record.getPhone(),record.getIdNumber());
if(worker3 != null && worker3.getName() != null){
return new AjaxResult(500, "注册的手机号已存在,手机号拥有者姓名为"+worker3.getName()+",请去确认手机号是否有误");
}
mapper.updateIsActiveById(delWorker.getId(),1);
record.setId(delWorker.getId());
record.setEinStatus(0);
//将数据还原并去修改
updateByPrimaryKey(record,fileMsg);
}else {
// 添加员工时判断员工编号是否已存在
PmWorker worker = mapper.getWorkerByNumber(record.getIdNumber(), 1);
if(worker != null && worker.getId() != null){ if(worker != null && worker.getId() != null){
return new AjaxResult(500, "施工人员身份证已存在,当前系统姓名为"+worker.getName()+"如果想入场请去修改数据即可"); return new AjaxResult(500, "施工人员身份证已存在,当前系统姓名为"+worker.getName()+"如果想入场请去修改数据即可");
} }
@ -103,6 +117,8 @@ public class PmWorkerServiceImpl implements PmWorkerService{
//下发人脸到考勤机 //下发人脸到考勤机
urkSendService.sendUserToDevice(record.getId(),record.getProId(),"0"); urkSendService.sendUserToDevice(record.getId(),record.getProId(),"0");
} }
}
return new AjaxResult(200, "添加成功",record.getId()); return new AjaxResult(200, "添加成功",record.getId());
} }
@ -248,9 +264,21 @@ public class PmWorkerServiceImpl implements PmWorkerService{
StringBuilder failureMsg = new StringBuilder(); StringBuilder failureMsg = new StringBuilder();
for (PmWorker worker : workerList) { for (PmWorker worker : workerList) {
try { try {
//是否以前人员但被删除了
PmWorker delWorker = mapper.getWorkerByNumber(worker.getIdNumber(),0);
if(delWorker.getId() != null){
mapper.updateIsActiveById(delWorker.getId(),1);
BeanValidators.validateWithException(validator, worker);
worker.setId(delWorker.getId());
worker.setEinStatus(0);
worker.setUpdateUser(SecurityUtils.getLoginUser().getSysUser().getUserName());
mapper.updateBasicWorkerData(worker);
successNum++;
successMsg.append("<br/>").append(successNum).append("、施工人员信息 ").append(worker.getName()).append(" 更新成功");
}else{
// 验证是否存在这个用户 // 验证是否存在这个用户
// 添加员工时判断员工编号是否已存在 // 添加员工时判断员工编号是否已存在
PmWorker w = mapper.getWorkerByNumber(worker.getIdNumber()); PmWorker w = mapper.getWorkerByNumber(worker.getIdNumber(),1);
Map<String, Object> idCardInfo = getIdCardInfo(worker.getIdNumber()); Map<String, Object> idCardInfo = getIdCardInfo(worker.getIdNumber());
if (idCardInfo == null) { if (idCardInfo == null) {
failureMsg.insert(0, "导入失败!第 " + (workerList.indexOf(worker) + 1) + " 行数据身份证号码格式不正确!"); failureMsg.insert(0, "导入失败!第 " + (workerList.indexOf(worker) + 1) + " 行数据身份证号码格式不正确!");
@ -277,6 +305,7 @@ public class PmWorkerServiceImpl implements PmWorkerService{
failureNum++; failureNum++;
failureMsg.append("<br/>").append(failureNum).append("、施工人员信息 ").append(worker.getName()).append(" 已存在"); failureMsg.append("<br/>").append(failureNum).append("、施工人员信息 ").append(worker.getName()).append(" 已存在");
} }
}
} catch (Exception e) { } catch (Exception e) {
failureNum++; failureNum++;
String msg = "<br/>" + failureNum + "、施工人员信息 " + worker.getName() + " 导入失败:"; String msg = "<br/>" + failureNum + "、施工人员信息 " + worker.getName() + " 导入失败:";

View File

@ -117,7 +117,7 @@
FROM FROM
pm_worker pw pm_worker pw
WHERE WHERE
pw.id_number = #{idNumber} and pw.is_active = 1 pw.id_number = #{idNumber} and pw.is_active = #{isActive}
</select> </select>
<insert id="insertEinMsg"> <insert id="insertEinMsg">
@ -255,10 +255,12 @@
pm_worker pw pm_worker pw
WHERE WHERE
pw.phone = #{phone} and pw.is_active = 1 pw.phone = #{phone} and pw.is_active = 1
<where>
<if test="idNumber != null and idNumber != ''"> <if test="idNumber != null and idNumber != ''">
AND pw.id_number != #{idNumber} AND pw.id_number != #{idNumber}
</if> </if>
</where>
</select> </select>
<update id="updateIsActiveById">
update pm_worker set is_active = #{isActive} where id = #{id}
</update>
</mapper> </mapper>