package com.ruoyi.admin.service.impl; import cn.hutool.core.util.RandomUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.admin.entity.MasterWorker; import com.ruoyi.admin.entity.WorkerProcess; import com.ruoyi.admin.mapper.WorkerProcessMapper; import com.ruoyi.admin.service.MasterWorkerService; import com.ruoyi.admin.service.WorkerProcessService; import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.domain.R; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; /** *

* 师傅入驻审核表 服务实现类 *

* * @author hjl * @since 2024-05-29 */ @Service public class WorkerProcessServiceImpl extends ServiceImpl implements WorkerProcessService { @Resource private MasterWorkerService masterWorkerService; @Override @Transactional(rollbackFor = Exception.class) public R examine(Integer id, Integer state, String opinion) { WorkerProcess workerProcess = lambdaQuery().eq(WorkerProcess::getState, 0).eq(WorkerProcess::getIsDelete, 0) .eq(WorkerProcess::getId, id).one(); if (null == workerProcess) { return R.fail("当前入驻申请已被审核!"); } workerProcess.setState(state); workerProcess.setOpinion(opinion); if (Constants.PASS_THROUGH_NUMBER.equals(state)) { // 审核状态为 1 已通过时,生成登录账号 MasterWorker masterWorker = new MasterWorker(); masterWorker.setCity(workerProcess.getCity()); masterWorker.setRealName(workerProcess.getRealName()); masterWorker.setIdNumber(workerProcess.getIdNumber()); masterWorker.setVehicleType(workerProcess.getVehicleType()); masterWorker.setVehicleNumber(workerProcess.getVehicleNumber()); masterWorker.setPhone(workerProcess.getPhone()); masterWorker.setIdentityPhoto(workerProcess.getIdentityPhoto()); masterWorker.setDrivingLicense(workerProcess.getDrivingLicense()); masterWorker.setIsEnable(1); // MD5加密登录密码(新) BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); String encodePassword = passwordEncoder.encode(Constants.DEFAULT_PASSWORD); masterWorker.setPassword(encodePassword); masterWorker.setUserNumber(Constants.DEFAULT_USER_NUMBER_PRE + RandomUtil.randomNumbers(10)); masterWorker.setCityStr(workerProcess.getCityStr()); masterWorker.setCityCode(workerProcess.getCityCode()); masterWorker.setProfilePicture(workerProcess.getProfilePicture()); masterWorkerService.save(masterWorker); } return updateById(workerProcess) ? R.ok() : R.fail("当前入驻申请审核失败!"); } }