123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- package cn.cslg.pas.service;
- import cn.cslg.pas.common.model.PersonnelVO;
- import cn.cslg.pas.common.model.vo.ClientVO;
- import cn.cslg.pas.common.model.vo.ProjectVO;
- import cn.cslg.pas.common.utils.*;
- import cn.cslg.pas.common.utils.SecurityUtils.LoginUtils;
- import cn.cslg.pas.domain.Client;
- import cn.cslg.pas.mapper.ClientMapper;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import lombok.RequiredArgsConstructor;
- import org.springframework.context.annotation.Lazy;
- import org.springframework.stereotype.Service;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import java.util.stream.Collectors;
- /**
- * <p>
- * 委托方表 服务类
- * </p>
- *
- * @author 王岩
- * @since 2022-02-17
- */
- @Service
- @RequiredArgsConstructor(onConstructor_ = {@Lazy})
- public class ClientService extends ServiceImpl<ClientMapper, Client> {
- private final LoginUtils loginUtils;
- private final CacheUtils cacheUtils;
- private final ApiUtils apiUtils;
- public IPage<Client> getPageList(ClientVO params) {
- LambdaQueryWrapper<Client> queryWrapper = new LambdaQueryWrapper<>();
- if (StringUtils.isNotEmpty(params.getName())) {
- queryWrapper.like(Client::getName, params.getName());
- }
- queryWrapper.orderByDesc(Client::getCreateTime);
- IPage<Client> lst = this.page(new Page<>(params.getCurrent(), params.getSize()), queryWrapper);
- List<Client> list = this.page(new Page<>(params.getCurrent(), params.getSize()), queryWrapper).getRecords();
- //获取专题库负责人对应信息
- Map<String, Object> map1 = new HashMap<>();
- try {
- map1.put("personnelId", list.stream().map(Client::getPersonnelId).collect(Collectors.toList()));
- String jsonObject1 = apiUtils.invokeApi(new JSONObject(map1), "/permission/api/system/getPersonnelById", "post", "data");
- JSONArray jsonArray = JSON.parseArray(jsonObject1);
- List<ProjectVO.Personnel> personnelList = jsonArray.toJavaList(ProjectVO.Personnel.class);
- for (Client client : list) {
- for (ProjectVO.Personnel personnel : personnelList) {
- if (client.getPersonnelId() != null) {
- if (client.getPersonnelId().equals(personnel.getId())) {
- client.setPersonnelName(personnel.getPersonnelName());
- }
- }
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- lst.setRecords(list);
- return lst;
- }
- public Client getClientByName(String name) {
- LambdaQueryWrapper<Client> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(Client::getName, name);
- return this.getOne(queryWrapper);
- }
- public List<Map<String,Object>> getClientName(List<Integer> ids) {
- LambdaQueryWrapper<Client> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.in(Client::getId, ids);
- List<Client> clients =this.list(queryWrapper);
- List<Map<String,Object>> mapList =new ArrayList<>();
- clients.forEach(item->{
- Map<String,Object> map =new HashMap<>();
- map.put("clientId",item.getId());
- map.put("clientName",item.getName());
- mapList.add(map);
- });
- return mapList;
- }
- public List<Client> getClientByTenant(Integer tenantId) {
- LambdaQueryWrapper<Client> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(Client::getTenantId, tenantId);
- return this.list(queryWrapper);
- }
- public String add(Client client) {
- client.setCreateBy(loginUtils.getId());
- client.setCreateTime(DateUtils.getDateTime());
- client.setStatus(1);
- client.insert();
- return Response.success(client.getId());
- }
- public String edit(Client client) {
- client.updateById();
- return Response.success();
- }
- public String delete(Integer id) {
- this.removeById(id);
- return Response.success(true);
- }
- public List<Client> getClientByObjectIds(List<Object> ids) {
- if (ids == null || ids.size() == 0) {
- return new ArrayList<>();
- }
- LambdaQueryWrapper<Client> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.in(Client::getId, ids);
- return this.list(queryWrapper);
- }
- public String add2(Client client) {
- Client temp = this.getClientByName(client.getName());
- if (temp != null) {
- return Response.error("客户名称已存在");
- }
- PersonnelVO personnelVO = cacheUtils.getLoginUserPersonnel(loginUtils.getId());
- client.setCreateBy(personnelVO.getId());
- client.setCreateTime(DateUtils.getDateTime());
- client.setStatus(1);
- client.insert();
- return Response.success(client.getId());
- }
- public String edit2(Client client) {
- Client temp = this.getClientByName(client.getName());
- if (temp != null && !temp.getId().equals(client.getId())) {
- return Response.error("客户名称已存在");
- }
- client.updateById();
- return Response.success();
- }
- public String delete2(Integer id) {
- this.removeById(id);
- return Response.success();
- }
- /**
- * @author 沈永艺
- * @description 获取所有的客户列表
- */
- public String getAllClient() {
- return Response.success(this.list());
- }
- }
|