diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterTrainPlanServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterTrainPlanServiceImpl.java index d24ac5c..e4f4dcb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterTrainPlanServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/meter/MeterTrainPlanServiceImpl.java @@ -18,8 +18,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.mapper.meter.MeterStaffMapper; import com.casic.missiles.mapper.meter.MeterTrainPlanMapper; import com.casic.missiles.mapper.meter.MeterTrainStaffMapper; +import com.casic.missiles.model.meter.MeterStaff; import com.casic.missiles.model.meter.MeterTrainPlan; import com.casic.missiles.model.meter.MeterTrainStaff; import com.casic.missiles.model.response.ResponseData; @@ -74,6 +76,8 @@ private TaskService taskService; @Resource private RuntimeService runtimeService; + @Autowired + private MeterStaffMapper staffMapper; @Override public Page listPage(Page page, TrainPlanListRequest request) { @@ -262,6 +266,15 @@ @Override public ReturnDTO signIn(TrainPlanSignInRequest request) { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + //登录用户id获取计量人员id,实验室检测信息中存储的是计量人员id + MeterStaff meterStaff = getMeterStaffInfo(user); + if(Objects.isNull(meterStaff)) throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_NOT_STAFF); + Long userId = meterStaff.getId(); + request.setStaffId(userId); //更新培训计划员工考核结果 int updateFlag = trainStaffMapper.updateStaffForSignIn(request); if(updateFlag > 0){ @@ -410,4 +423,11 @@ wrapper.orderByDesc("train_time").orderByDesc("create_time"); return wrapper; } + + private MeterStaff getMeterStaffInfo(AuthUser user) { + String account = user.getAccount(); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("account", account); + return staffMapper.selectOne(wrapper); + } }