mirror of
https://github.com/weizhiqiang1995/erp-pro.git
synced 2025-02-28 17:33:25 +08:00
feat: 新增【根据业务数据id批量获取联系人列表】的接口
This commit is contained in:
parent
95ef5f461f
commit
919de23c2e
3 changed files with 36 additions and 0 deletions
|
@ -100,4 +100,18 @@ public class ContactsController {
|
|||
contactsService.queryContactsListByObject(inputObject, outputObject);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据业务数据id批量获取联系人列表
|
||||
*
|
||||
* @param inputObject 入参以及用户信息等获取对象
|
||||
* @param outputObject 出参以及提示信息的返回值对象
|
||||
*/
|
||||
@ApiOperation(id = "queryContactsListByObjectIds", value = "根据业务数据id批量获取联系人列表", method = "POST", allUse = "2")
|
||||
@ApiImplicitParams(value = {
|
||||
@ApiImplicitParam(id = "objectIds", name = "objectIds", value = "业务数据id集合", required = "json")})
|
||||
@RequestMapping("/post/ContactsController/queryContactsListByObjectIds")
|
||||
public void queryContactsListByObjectIds(InputObject inputObject, OutputObject outputObject) {
|
||||
contactsService.queryContactsListByObjectIds(inputObject, outputObject);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -21,4 +21,5 @@ public interface ContactsService extends SkyeyeTeamAuthService<Contacts> {
|
|||
|
||||
void queryContactsListByObject(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void queryContactsListByObjectIds(InputObject inputObject, OutputObject outputObject);
|
||||
}
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
|
||||
package com.skyeye.contacts.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.skyeye.annotation.service.SkyeyeService;
|
||||
import com.skyeye.base.business.service.impl.SkyeyeTeamAuthServiceImpl;
|
||||
import com.skyeye.common.constans.CommonNumConstants;
|
||||
import com.skyeye.common.entity.search.CommonPageInfo;
|
||||
import com.skyeye.common.enumeration.DeleteFlagEnum;
|
||||
import com.skyeye.common.enumeration.IsDefaultEnum;
|
||||
|
@ -23,6 +26,7 @@ import org.springframework.stereotype.Service;
|
|||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @ClassName: ContactsServiceImpl
|
||||
|
@ -83,4 +87,21 @@ public class ContactsServiceImpl extends SkyeyeTeamAuthServiceImpl<ContactsDao,
|
|||
outputObject.setBeans(contactsList);
|
||||
outputObject.settotal(contactsList.size());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void queryContactsListByObjectIds(InputObject inputObject, OutputObject outputObject) {
|
||||
String objectIdsStr = inputObject.getParams().get("objectIds").toString();
|
||||
List<String> objectIds = JSONUtil.toList(objectIdsStr, null);
|
||||
if (CollectionUtil.isEmpty(objectIds)) {
|
||||
return;
|
||||
}
|
||||
objectIds = objectIds.stream().distinct().collect(Collectors.toList());
|
||||
QueryWrapper<Contacts> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.in(MybatisPlusUtil.toColumns(Contacts::getObjectId), objectIds);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(Contacts::getDeleteFlag), DeleteFlagEnum.NOT_DELETE.getKey());
|
||||
List<Contacts> contactsList = list(queryWrapper);
|
||||
Map<String, List<Contacts>> result = contactsList.stream().collect(Collectors.groupingBy(Contacts::getObjectId));
|
||||
outputObject.setBean(result);
|
||||
outputObject.settotal(CommonNumConstants.NUM_ONE);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue