|
|
@@ -4,11 +4,14 @@ import cn.hutool.core.util.NumberUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xunmei.common.core.domain.letter.domain.CoreIntroduceLetterOutInHistoryUser;
|
|
|
import com.xunmei.common.core.domain.letter.dto.CoreIntroduceLetterOutInHistoryUserDto;
|
|
|
+import com.xunmei.common.core.domain.letter.dto.CoreIntroduceLetterUserAddDto;
|
|
|
import com.xunmei.common.core.utils.DateUtils;
|
|
|
+import com.xunmei.common.core.utils.StringUtils;
|
|
|
import com.xunmei.common.core.web.page.TableDataInfo;
|
|
|
import com.xunmei.common.security.utils.SecurityUtils;
|
|
|
import com.xunmei.core.letter.mapper.CoreIntroduceLetterOutInHistoryUserMapper;
|
|
|
@@ -18,8 +21,11 @@ import com.xunmei.system.api.model.LoginUser;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 机构出入过的历史人员Service业务层处理
|
|
|
@@ -46,20 +52,18 @@ public class CoreIntroduceLetterOutInHistoryUserServiceImpl extends ServiceImpl<
|
|
|
}
|
|
|
|
|
|
LambdaQueryWrapper<CoreIntroduceLetterOutInHistoryUser> lqw = new LambdaQueryWrapper<>();
|
|
|
- lqw.eq(CoreIntroduceLetterOutInHistoryUser::getOrgId, request.getOrgId())
|
|
|
- .and(qw -> {
|
|
|
- qw.like(ObjectUtil.isNotEmpty(request.getKeyWords()), CoreIntroduceLetterOutInHistoryUser::getIdCard, request.getKeyWords())
|
|
|
- .or()
|
|
|
- .like(ObjectUtil.isNotEmpty(request.getKeyWords()), CoreIntroduceLetterOutInHistoryUser::getUserName, request.getKeyWords());
|
|
|
- });
|
|
|
-
|
|
|
+ lqw.eq(CoreIntroduceLetterOutInHistoryUser::getOrgId, request.getOrgId());
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(request.getKeyWords())) {
|
|
|
+ lqw.and(qw -> {
|
|
|
+ qw.like(ObjectUtil.isNotEmpty(request.getKeyWords()), CoreIntroduceLetterOutInHistoryUser::getIdCard, request.getKeyWords())
|
|
|
+ .or()
|
|
|
+ .like(ObjectUtil.isNotEmpty(request.getKeyWords()), CoreIntroduceLetterOutInHistoryUser::getUserName, request.getKeyWords());
|
|
|
+ });
|
|
|
+ }
|
|
|
page = coreIntroduceLetterOutInHistoryUserMapper.selectPage(page, lqw);
|
|
|
-
|
|
|
-
|
|
|
//抓换为TableDataInfo适配前端
|
|
|
return TableDataInfo.build(page);
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -148,6 +152,7 @@ public class CoreIntroduceLetterOutInHistoryUserServiceImpl extends ServiceImpl<
|
|
|
*
|
|
|
* @param outInRequestUser
|
|
|
*/
|
|
|
+ @Override
|
|
|
public int inboundOutInHistory(CoreIntroduceLetterOutInHistoryUser outInRequestUser) {
|
|
|
// LoginUser loginUser = SecurityUtils.getLoginUser();
|
|
|
// if (NumberUtil.equals(outInRequestUser.getOrgId(), loginUser.getOrgId())) {
|
|
|
@@ -178,4 +183,55 @@ public class CoreIntroduceLetterOutInHistoryUserServiceImpl extends ServiceImpl<
|
|
|
return coreIntroduceLetterOutInHistoryUserMapper.insert(outInRequestUser);
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void batchInboundOutInHistory(List<CoreIntroduceLetterUserAddDto> userDtoLister , Long orgId,Long outInRequestId) {
|
|
|
+ List<String> userNameList =new ArrayList<>();
|
|
|
+ List<String> idCardList =new ArrayList<>();
|
|
|
+ userDtoLister.stream().forEach(x -> {
|
|
|
+ userNameList.add(x.getUserName());
|
|
|
+ idCardList.add(x.getIdCard());
|
|
|
+ });
|
|
|
+
|
|
|
+ LambdaQueryWrapper<CoreIntroduceLetterOutInHistoryUser> lqw = new LambdaQueryWrapper<>();
|
|
|
+ lqw.eq(CoreIntroduceLetterOutInHistoryUser::getOrgId, orgId)
|
|
|
+ .in(CoreIntroduceLetterOutInHistoryUser::getUserName, userNameList)
|
|
|
+ .or()
|
|
|
+ .in(CoreIntroduceLetterOutInHistoryUser::getIdCard, idCardList);
|
|
|
+ List<CoreIntroduceLetterOutInHistoryUser> historyUsers = coreIntroduceLetterOutInHistoryUserMapper.selectList(lqw);
|
|
|
+
|
|
|
+ List<CoreIntroduceLetterOutInHistoryUser> users = new ArrayList<>();
|
|
|
+
|
|
|
+ userDtoLister.forEach(x -> {
|
|
|
+ List<CoreIntroduceLetterOutInHistoryUser> collect = historyUsers.stream().filter(y -> y.getUserName().equals(x.getUserName()) && y.getIdCard().equals(x.getIdCard()) && y.getIdType().equals(x.getIdType())).collect(Collectors.toList());
|
|
|
+ if(collect.size()>0) {
|
|
|
+ CoreIntroduceLetterOutInHistoryUser orgHistoryUser = collect.get(0);
|
|
|
+ orgHistoryUser.setUserName(x.getUserName());
|
|
|
+ orgHistoryUser.setIdType(x.getIdType());
|
|
|
+ orgHistoryUser.setIdCard(x.getIdCard());
|
|
|
+ orgHistoryUser.setCompanyName(x.getCompanyName());
|
|
|
+ orgHistoryUser.setImgFile(x.getImgFile());
|
|
|
+ orgHistoryUser.setUpdateTime(new Date());
|
|
|
+ orgHistoryUser.setUpdateBy(SecurityUtils.getUsername());
|
|
|
+ orgHistoryUser.setOutInRequestId(outInRequestId);
|
|
|
+ users.add(orgHistoryUser);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CoreIntroduceLetterOutInHistoryUser newHistoryUser = new CoreIntroduceLetterOutInHistoryUser();
|
|
|
+ newHistoryUser.setId(IdWorker.getId());
|
|
|
+ newHistoryUser.setOrgId(orgId);
|
|
|
+ newHistoryUser.setUserName(x.getUserName());
|
|
|
+ newHistoryUser.setIdType(x.getIdType());
|
|
|
+ newHistoryUser.setIdCard(x.getIdCard());
|
|
|
+ newHistoryUser.setCompanyName(x.getCompanyName());
|
|
|
+ newHistoryUser.setImgFile(x.getImgFile());
|
|
|
+ newHistoryUser.setCreateTime(new Date());
|
|
|
+ newHistoryUser.setCreateBy(SecurityUtils.getUsername());
|
|
|
+ users.add(newHistoryUser);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ this.saveOrUpdateBatch(users);
|
|
|
+
|
|
|
+ }
|
|
|
}
|