mg
2022-10-09 d1a23c0144066e118b0b5f6b3bb65bf783759741
ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
@@ -7,21 +7,27 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.dto.user.AdminDepartDTO;
import com.ycl.entity.depart.UmsDepart;
import com.ycl.entity.dict.DataDictionary;
import com.ycl.entity.user.UmsDepartManage;
import com.ycl.enums.common.ResultCode;
import com.ycl.exception.ApiException;
import com.ycl.mapper.depart.UmsDepartMapper;
import com.ycl.mapper.dict.DataDictionaryMapper;
import com.ycl.service.depart.IDepartManagerService;
import com.ycl.service.depart.UmsDepartService;
import com.ycl.service.user.UmsDepartManageService;
import com.ycl.service.user.UmsAdminService;
import com.ycl.service.user.UmsDepartManageService;
import com.ycl.utils.common.PojoUtils;
import com.ycl.vo.depart.DepartVO;
import com.ycl.vo.depart.UmsDepartVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@@ -41,6 +47,12 @@
    private UmsDepartManageService umsAdminDepartService;
    @Resource
    private UmsAdminService umsAdminService;
    @Resource
    IDepartManagerService iDepartManagerService;
    @Resource
    UmsDepartService umsDepartService;
    @Resource
    DataDictionaryMapper dataDictionaryMapper;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -51,9 +63,14 @@
        }
        UmsDepart depart = new UmsDepart();
        BeanUtils.copyProperties(addDepartVO, depart);
        if (sccgDepartMapper.insert(depart) != 1) {
            throw new ApiException(ResultCode.RECORD_SAVE_FAIL);
        }
      depart.setStatus(Short.valueOf("1"));
        umsDepartService.save(depart);
        addDepartVO.getDepartManagerList()
                .forEach(item -> {
                    item.setCreateTime(LocalDateTime.now());
                    item.setDepartId(depart.getId());
                });
        iDepartManagerService.saveBatch(addDepartVO.getDepartManagerList());
    }
    @Override
@@ -122,7 +139,7 @@
    }
    @Override
    public IPage<UmsDepart> pageDepart(DepartVO.PageDepartVO params) {
    public IPage<UmsDepartVO> pageDepart(DepartVO.PageDepartVO params) {
        Page<UmsDepart> page = new Page<>(params.getCurrent(), params.getPageSize());
        LambdaQueryWrapper<UmsDepart> query = new LambdaQueryWrapper<>();
        if (StringUtils.isNotBlank(params.getDepartName())) {
@@ -133,10 +150,19 @@
        }
        query.orderByDesc(UmsDepart::getCreateTime);
        Page<UmsDepart> departPage = sccgDepartMapper.selectPage(page, query);
        List<UmsDepart> records = departPage.getRecords();
        Page<UmsDepartVO> umsDepartVOPage = new Page<>();
        BeanUtils.copyProperties(departPage, umsDepartVOPage);
        List<UmsDepartVO> umsDepartVOList = new ArrayList<>();
        //负责人
        if (CollUtil.isNotEmpty(records)) {
            for (UmsDepart record : records) {
        if (CollUtil.isNotEmpty(departPage.getRecords())) {
            for (UmsDepart record : departPage.getRecords()) {
                UmsDepartVO umsDepartVO = new UmsDepartVO();
                BeanUtils.copyProperties(record, umsDepartVO);
                umsDepartVO.setDepartType(dataDictionaryMapper
                        .selectOne(new LambdaQueryWrapper<DataDictionary>()
                                .eq(DataDictionary::getId, record.getDepartType()))
                        .getName());
                umsDepartVOList.add(umsDepartVO);
                List<UmsDepartManage> umsAdminDeparts = umsAdminDepartService.queryByDepartId(record.getId());
                if (CollUtil.isNotEmpty(umsAdminDeparts)) {
                    List<AdminDepartDTO.UserInfoDTO> userInfoDTOS = umsAdminDeparts.stream().map(a -> {
@@ -149,7 +175,8 @@
                }
            }
        }
        return departPage;
        umsDepartVOPage.setRecords(umsDepartVOList);
        return umsDepartVOPage;
    }
    @Override