xiangpei
2025-05-14 47cd9ecc0eff38ffe6b3b794b2bf197e958f4403
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
package com.mindskip.xzs.service.impl;
 
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.mindskip.xzs.domain.DepartmentExamine;
import com.mindskip.xzs.domain.vo.DepartmentExamineVO;
import com.mindskip.xzs.repository.DepartmentExamineMapper;
import com.mindskip.xzs.service.DepartmentExamineService;
import com.mindskip.xzs.service.UserDepartMentService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
/**
 * <p>
 * 部门审核表 服务实现类
 * </p>
 *
 * @author gonghl
 * @since 2024-05-13
 */
@Service
@RequiredArgsConstructor
public class DepartmentExamineServiceImpl extends ServiceImpl<DepartmentExamineMapper, DepartmentExamine> implements DepartmentExamineService {
 
    private final UserDepartMentService userDepartMentService;
 
    @Override
    public PageInfo<DepartmentExamineVO> pageInfo(DepartmentExamineVO departmentExamineVO) {
        return PageHelper.startPage(departmentExamineVO.getPageIndex(), departmentExamineVO.getPageSize(), "id desc").doSelectPageInfo(() ->
                baseMapper.pageInfo(departmentExamineVO)
        );
    }
 
    @Override
    @Transactional
    public Boolean audit(DepartmentExamineVO departmentExamine) {
        // 审核通过重新绑定
        if ("1".equals(departmentExamine.getResult().getCode())) {
            userDepartMentService.removeByUserId(departmentExamine.getUserId());
            userDepartMentService.insertBatchByDepartmentExamine(departmentExamine);
        }
        return new LambdaUpdateChainWrapper<>(baseMapper)
                .eq(DepartmentExamine::getId, departmentExamine.getId())
                .set(DepartmentExamine::getResult, departmentExamine.getResult())
                .set(DepartmentExamine::getRemark, departmentExamine.getRemark())
                .update();
    }
}