lyh
2025-04-08 c4eddf6f793986516c919add6493ad2be2c63b82
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/MdcUserProductionServiceImpl.java
@@ -1,14 +1,17 @@
package org.jeecg.modules.system.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.MdcUserProduction;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.mapper.MdcUserProductionMapper;
import org.jeecg.modules.system.model.ProductionIdModel;
import org.jeecg.modules.system.service.IMdcProductionService;
import org.jeecg.modules.system.service.IMdcUserProductionService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
@@ -63,4 +66,87 @@
    public List<String> queryProductionIdsByUserId(String userId) {
        return this.baseMapper.queryProductionIdsByUserId(userId);
    }
    /**
     * 根据一组车间id查询用户产线信息
     * @param productionIds
     */
    @Override
    public List<MdcUserProduction> queryByProductionIds(List<String> productionIds){
        if (!productionIds.isEmpty()){
            return super.list(new LambdaQueryWrapper<MdcUserProduction>().in(MdcUserProduction::getProId, productionIds));
        }
        return null;
    }
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public boolean removeByCollection(List<MdcUserProduction> mdcUserProductions) {
        if(mdcUserProductions == null || mdcUserProductions.isEmpty())
            return false;
        if(mdcUserProductions.size() == 1){
            return super.removeById(mdcUserProductions.get(0).getId());
        }
        List<String> ids = new ArrayList<>();
        mdcUserProductions.forEach(item -> {
            ids.add(item.getId());
        });
        return super.removeByIds(ids);
    }
    /**
     * 获取已分配的用户列表
     * @param proId
     * @return
     */
    @Override
    public List<SysUser> getUserPermsByGroupId(String proId){
        return super.getBaseMapper().getUserPermsByGroupId(proId);
    }
    /**
     * 获取未分配的用户列表
     * @param proId
     * @return
     */
    @Override
    public List<SysUser> getUserNonPermsByGroupId(String proId){
        return super.getBaseMapper().getUserNonPermsByGroupId(proId);
    }
    /**
     * 获取未分配的用户
     * @param proId
     * @return
     */
    @Override
    public List<SysUser> getUserNonPermsByDeviceId(String proId){
        return super.getBaseMapper().getUserNonPermsByDeviceId(proId);
    }
    @Override
    public List<SysUser> getUserPermsByDeviceId(String proId) {
        return super.getBaseMapper().getUserPermsByDeviceId(proId);
    }
    /**
     * 通过车间id与岗位id筛选用户
     * @param post
     * @param proId
     * @return
     */
    @Override
    public List<SysUser> queryByPostAndProId(String post, String proId){
        return super.getBaseMapper().queryByPostAndProId(post, proId);
    }
    @Override
    public MdcUserProduction getByUserIdAndGroupId(String userId, String proId){
        if(StrUtil.isEmpty(userId) || StrUtil.isEmpty(proId))
            return null;
        List<MdcUserProduction> list = super.lambdaQuery().eq(MdcUserProduction::getUserId, userId).eq(MdcUserProduction::getProId, proId).list();
        if(list == null || list.isEmpty())
            return null;
        return list.get(0);
    }
}