hjl
2024-07-01 03c6572c7918beaa20365e69c9694a11f0d9948a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
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;
 
/**
 * <p>
 * 师傅入驻审核表 服务实现类
 * </p>
 *
 * @author hjl
 * @since 2024-05-29
 */
@Service
public class WorkerProcessServiceImpl extends ServiceImpl<WorkerProcessMapper, WorkerProcess> implements WorkerProcessService {
 
    @Resource
    private MasterWorkerService masterWorkerService;
 
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R<String> 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));
            masterWorkerService.save(masterWorker);
        }
        return updateById(workerProcess) ? R.ok() : R.fail("当前入驻申请审核失败!");
    }
}