|
@@ -1,6 +1,5 @@
|
|
|
package com.sckw.manage.service;
|
|
package com.sckw.manage.service;
|
|
|
|
|
|
|
|
-import java.io.IOException;
|
|
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
@@ -9,6 +8,7 @@ import com.github.pagehelper.PageInfo;
|
|
|
import com.sckw.core.exception.SystemException;
|
|
import com.sckw.core.exception.SystemException;
|
|
|
import com.sckw.core.model.constant.Global;
|
|
import com.sckw.core.model.constant.Global;
|
|
|
import com.sckw.core.model.enums.CooperateStatusEnum;
|
|
import com.sckw.core.model.enums.CooperateStatusEnum;
|
|
|
|
|
+import com.sckw.core.model.enums.CooperateTypeEnum;
|
|
|
import com.sckw.core.model.enums.SystemTypeEnum;
|
|
import com.sckw.core.model.enums.SystemTypeEnum;
|
|
|
import com.sckw.core.model.page.PageHelperUtil;
|
|
import com.sckw.core.model.page.PageHelperUtil;
|
|
|
import com.sckw.core.model.page.PageResult;
|
|
import com.sckw.core.model.page.PageResult;
|
|
@@ -18,28 +18,32 @@ import com.sckw.core.utils.StringUtils;
|
|
|
import com.sckw.core.web.constant.HttpStatus;
|
|
import com.sckw.core.web.constant.HttpStatus;
|
|
|
import com.sckw.core.web.context.LoginUserHolder;
|
|
import com.sckw.core.web.context.LoginUserHolder;
|
|
|
import com.sckw.core.web.response.HttpResult;
|
|
import com.sckw.core.web.response.HttpResult;
|
|
|
-import com.sckw.excel.utils.EasyExcelUtil;
|
|
|
|
|
|
|
+import com.sckw.excel.utils.ExcelUtil;
|
|
|
import com.sckw.manage.dao.KwmCooperateMapper;
|
|
import com.sckw.manage.dao.KwmCooperateMapper;
|
|
|
import com.sckw.manage.dao.KwmCooperateTypeMapper;
|
|
import com.sckw.manage.dao.KwmCooperateTypeMapper;
|
|
|
import com.sckw.manage.model.dto.req.CooperateManageQueryReqDto;
|
|
import com.sckw.manage.model.dto.req.CooperateManageQueryReqDto;
|
|
|
import com.sckw.manage.model.dto.res.CooperateManageQueryResDto;
|
|
import com.sckw.manage.model.dto.res.CooperateManageQueryResDto;
|
|
|
|
|
+import com.sckw.manage.model.entity.KwmAddress;
|
|
|
import com.sckw.manage.model.entity.KwmCooperate;
|
|
import com.sckw.manage.model.entity.KwmCooperate;
|
|
|
import com.sckw.manage.model.entity.KwmCooperateType;
|
|
import com.sckw.manage.model.entity.KwmCooperateType;
|
|
|
-import com.sckw.manage.model.vo.req.BindManagerReqVo;
|
|
|
|
|
-import com.sckw.manage.model.vo.req.CooperateManageQueryReqVo;
|
|
|
|
|
-import com.sckw.manage.model.vo.req.FindCooperateByEntReqVo;
|
|
|
|
|
-import com.sckw.manage.model.vo.req.FindEntCooperateReqVo;
|
|
|
|
|
|
|
+import com.sckw.manage.model.report.AddressQueryExport;
|
|
|
|
|
+import com.sckw.manage.model.report.CooperateManageExport;
|
|
|
|
|
+import com.sckw.manage.model.report.QueryAllCooperateInfoExcel;
|
|
|
|
|
+import com.sckw.manage.model.vo.req.*;
|
|
|
import com.sckw.manage.model.vo.res.*;
|
|
import com.sckw.manage.model.vo.res.*;
|
|
|
import com.sckw.payment.api.model.constant.OrderEnum;
|
|
import com.sckw.payment.api.model.constant.OrderEnum;
|
|
|
import com.sckw.stream.enums.MessageEnum;
|
|
import com.sckw.stream.enums.MessageEnum;
|
|
|
import com.sckw.stream.model.UserInfo;
|
|
import com.sckw.stream.model.UserInfo;
|
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
|
import com.sckw.order.api.dubbo.TradeOrderInfoService;
|
|
import com.sckw.order.api.dubbo.TradeOrderInfoService;
|
|
|
|
|
+import com.sckw.system.api.model.dto.res.UserCacheResDto;
|
|
|
import com.sckw.transport.api.dubbo.TransportDubboService;
|
|
import com.sckw.transport.api.dubbo.TransportDubboService;
|
|
|
import com.sckw.payment.api.dubbo.PaymentDubboService;
|
|
import com.sckw.payment.api.dubbo.PaymentDubboService;
|
|
|
import com.sckw.system.api.model.dto.res.EntCacheResDto;
|
|
import com.sckw.system.api.model.dto.res.EntCacheResDto;
|
|
|
|
|
+import jakarta.servlet.http.HttpServletResponse;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
|
|
+import org.jetbrains.annotations.NotNull;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -81,6 +85,9 @@ public class KwmCooperateManageService {
|
|
|
@Value(value = "${jumpUrl.cooperateManageUrl}")
|
|
@Value(value = "${jumpUrl.cooperateManageUrl}")
|
|
|
private String cooperateManageUrl;
|
|
private String cooperateManageUrl;
|
|
|
|
|
|
|
|
|
|
+ @Value(value = "${jumpUrl.appCooperateApplyUrl}")
|
|
|
|
|
+ private String appCooperateApplyUrl;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @param reqVo 分页入参
|
|
* @param reqVo 分页入参
|
|
|
* @return PageResult
|
|
* @return PageResult
|
|
@@ -236,26 +243,30 @@ public class KwmCooperateManageService {
|
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(ourEntTopCacheResDto.getContactsId()).setEntId(ourEntTopCacheResDto.getId())),
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(ourEntTopCacheResDto.getContactsId()).setEntId(ourEntTopCacheResDto.getId())),
|
|
|
MessageEnum.COOPERATE_DISSOLVE,
|
|
MessageEnum.COOPERATE_DISSOLVE,
|
|
|
map,
|
|
map,
|
|
|
- cooperateManageUrl);
|
|
|
|
|
|
|
+ cooperateManageUrl,
|
|
|
|
|
+ appCooperateApplyUrl);
|
|
|
|
|
|
|
|
map.put("entName", ourEntCacheResDto.getFirmName());
|
|
map.put("entName", ourEntCacheResDto.getFirmName());
|
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(targetEntTreeCacheResDto.getContactsId()).setEntId(targetEntTreeCacheResDto.getId())),
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(targetEntTreeCacheResDto.getContactsId()).setEntId(targetEntTreeCacheResDto.getId())),
|
|
|
MessageEnum.COOPERATE_DISSOLVED,
|
|
MessageEnum.COOPERATE_DISSOLVED,
|
|
|
map,
|
|
map,
|
|
|
- cooperateManageUrl);
|
|
|
|
|
|
|
+ cooperateManageUrl,
|
|
|
|
|
+ appCooperateApplyUrl);
|
|
|
} else {
|
|
} else {
|
|
|
map.put("entName", targetEntCacheResDto.getFirmName());
|
|
map.put("entName", targetEntCacheResDto.getFirmName());
|
|
|
map.put("createByName", LoginUserHolder.getUserName());
|
|
map.put("createByName", LoginUserHolder.getUserName());
|
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(ourEntTopCacheResDto.getContactsId()).setEntId(ourEntTopCacheResDto.getId())),
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(ourEntTopCacheResDto.getContactsId()).setEntId(ourEntTopCacheResDto.getId())),
|
|
|
MessageEnum.COOPERATE_RESTORE,
|
|
MessageEnum.COOPERATE_RESTORE,
|
|
|
map,
|
|
map,
|
|
|
- cooperateManageUrl);
|
|
|
|
|
|
|
+ cooperateManageUrl,
|
|
|
|
|
+ appCooperateApplyUrl);
|
|
|
|
|
|
|
|
map.put("entName", ourEntCacheResDto.getFirmName());
|
|
map.put("entName", ourEntCacheResDto.getFirmName());
|
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(targetEntTreeCacheResDto.getContactsId()).setEntId(targetEntTreeCacheResDto.getId())),
|
|
commonBusinessService.sendSystemMessage(Collections.singletonList(new UserInfo().setUserId(targetEntTreeCacheResDto.getContactsId()).setEntId(targetEntTreeCacheResDto.getId())),
|
|
|
MessageEnum.COOPERATE_RESTORED,
|
|
MessageEnum.COOPERATE_RESTORED,
|
|
|
map,
|
|
map,
|
|
|
- cooperateManageUrl);
|
|
|
|
|
|
|
+ cooperateManageUrl,
|
|
|
|
|
+ appCooperateApplyUrl);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|
|
@@ -339,23 +350,39 @@ public class KwmCooperateManageService {
|
|
|
* @author: czh
|
|
* @author: czh
|
|
|
* @date: 2023/7/11
|
|
* @date: 2023/7/11
|
|
|
*/
|
|
*/
|
|
|
- public void export(CooperateManageQueryReqVo reqVo) {
|
|
|
|
|
|
|
+ public void export(CooperateManageQueryReqVo reqVo, HttpServletResponse response) {
|
|
|
CooperateManageQueryReqDto reqDto = buildQueryParam(reqVo);
|
|
CooperateManageQueryReqDto reqDto = buildQueryParam(reqVo);
|
|
|
List<CooperateManageQueryResDto> list = kwmCooperateMapper.findManageList(reqDto);
|
|
List<CooperateManageQueryResDto> list = kwmCooperateMapper.findManageList(reqDto);
|
|
|
if (CollectionUtils.isEmpty(list)) {
|
|
if (CollectionUtils.isEmpty(list)) {
|
|
|
- return;
|
|
|
|
|
|
|
+ throw new SystemException("导出数据为空");
|
|
|
}
|
|
}
|
|
|
List<CooperateManageQueryResVo> cooperateManageQueryResVos = commonBusinessService.getCooperateManageQueryResVos(list);
|
|
List<CooperateManageQueryResVo> cooperateManageQueryResVos = commonBusinessService.getCooperateManageQueryResVos(list);
|
|
|
- if (CollectionUtils.isEmpty(cooperateManageQueryResVos)) {
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ List<CooperateManageExport> result = new ArrayList<>();
|
|
|
|
|
+ cooperateManageQueryResVos.forEach(item -> {
|
|
|
|
|
+ CooperateManageExport cooperateManageExport = new CooperateManageExport();
|
|
|
|
|
+ BeanUtils.copyProperties(item, cooperateManageExport);
|
|
|
|
|
+ cooperateManageExport.setStatus(CooperateStatusEnum.getName(item.getStatus()));
|
|
|
|
|
+ cooperateManageExport.setApplyType(item.getApplyTypeCode().equals(1) ? "我方发起" : "对方发起");
|
|
|
|
|
+ String cooperateTypes = item.getCooperateTypes();
|
|
|
|
|
+ if (cooperateTypes.contains(String.valueOf(CooperateTypeEnum.SUPPLIER.getCode()))) {
|
|
|
|
|
+ cooperateManageExport.setEnt1("是");
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- try {
|
|
|
|
|
- EasyExcelUtil.writeSingleExcel("合作管理.xlsx", "sheet1", cooperateManageQueryResVos, CooperateManageQueryResVo.class);
|
|
|
|
|
- } catch (IOException e) {
|
|
|
|
|
- log.error("导出失败:", e);
|
|
|
|
|
- throw new SystemException(HttpStatus.CODE_10301, HttpStatus.MSG_014);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ if (cooperateTypes.contains(String.valueOf(CooperateTypeEnum.PURCHASER.getCode()))) {
|
|
|
|
|
+ cooperateManageExport.setEnt2("是");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (cooperateTypes.contains(String.valueOf(CooperateTypeEnum.CONSIGN.getCode()))) {
|
|
|
|
|
+ cooperateManageExport.setEnt3("是");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (cooperateTypes.contains(String.valueOf(CooperateTypeEnum.CARRIAGE.getCode()))) {
|
|
|
|
|
+ cooperateManageExport.setEnt4("是");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ result.add(cooperateManageExport);
|
|
|
|
|
+ });
|
|
|
|
|
+ ExcelUtil.downData(response, CooperateManageExport.class, result);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -653,4 +680,103 @@ public class KwmCooperateManageService {
|
|
|
return kwmCooperateMapper.selectList(wrapper);
|
|
return kwmCooperateMapper.selectList(wrapper);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @param reqVo 分页入参
|
|
|
|
|
+ * @return QueryAllCooperateInfoResVo
|
|
|
|
|
+ * @desc: 运营端查合作信息
|
|
|
|
|
+ * @author: czh
|
|
|
|
|
+ * @date: 2023/9/15
|
|
|
|
|
+ */
|
|
|
|
|
+ public PageResult queryAllCooperateInfoByPage(CooperateManageQueryReqVo reqVo) {
|
|
|
|
|
+ PageHelper.startPage(reqVo.getPage(), reqVo.getPageSize());
|
|
|
|
|
+ List<CooperateManageQueryResDto> list = kwmCooperateMapper.queryAllCooperateInfoList(getQueryAllCooperateInfoReqDto(reqVo));
|
|
|
|
|
+ if (CollectionUtils.isEmpty(list)) {
|
|
|
|
|
+ return PageHelperUtil.getPageResult(new PageInfo<>());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return PageHelperUtil.getPageResult(new PageInfo<>(getAllCooperateInfoVo(list)), list, reqVo.getPageSize());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 构建入参
|
|
|
|
|
+ */
|
|
|
|
|
+ private QueryAllCooperateInfoReqDto getQueryAllCooperateInfoReqDto(CooperateManageQueryReqVo reqVo) {
|
|
|
|
|
+ QueryAllCooperateInfoReqDto queryAllCooperateInfoReqDto = new QueryAllCooperateInfoReqDto();
|
|
|
|
|
+ BeanUtils.copyProperties(reqVo, queryAllCooperateInfoReqDto);
|
|
|
|
|
+ String cooperateTypes = reqVo.getCooperateTypes();
|
|
|
|
|
+ if (StringUtils.isNotBlank(cooperateTypes)) {
|
|
|
|
|
+ queryAllCooperateInfoReqDto.setCooperateTypes(Arrays.stream(cooperateTypes.split(Global.COMMA)).map(Integer::parseInt).toList());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (StringUtils.isNotBlank(reqVo.getKeywords())) {
|
|
|
|
|
+ List<EntCacheResDto> entCacheResDtos = remoteSystemService.queryEntCacheByName(reqVo.getKeywords());
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(entCacheResDtos)) {
|
|
|
|
|
+ queryAllCooperateInfoReqDto.setQueryEntIdList(entCacheResDtos.stream().map(EntCacheResDto::getId).toList());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return queryAllCooperateInfoReqDto;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取返参
|
|
|
|
|
+ */
|
|
|
|
|
+ private List<QueryAllCooperateInfoResVo> getAllCooperateInfoVo(List<CooperateManageQueryResDto> list) {
|
|
|
|
|
+ List<Long> inviteeEntIds = list.stream().map(CooperateManageQueryResDto::getInviteeEntId).toList();
|
|
|
|
|
+ List<Long> inviterEntIds = list.stream().map(CooperateManageQueryResDto::getInviterEntId).toList();
|
|
|
|
|
+ List<Long> userIds = list.stream().map(CooperateManageQueryResDto::getCreateBy).toList();
|
|
|
|
|
+ List<Long> allEntIds = new ArrayList<>();
|
|
|
|
|
+ allEntIds.addAll(inviterEntIds);
|
|
|
|
|
+ allEntIds.addAll(inviteeEntIds);
|
|
|
|
|
+ Map<Long, EntCacheResDto> entCacheResDtoMap = remoteSystemService.queryEntCacheMapByIds(allEntIds);
|
|
|
|
|
+ Map<Long, UserCacheResDto> userCacheResDtoMap = remoteSystemService.queryUserCacheMapByIds(userIds);
|
|
|
|
|
+
|
|
|
|
|
+ List<QueryAllCooperateInfoResVo> result = new ArrayList<>();
|
|
|
|
|
+ list.forEach(item -> {
|
|
|
|
|
+ QueryAllCooperateInfoResVo queryAllCooperateInfoResVo = new QueryAllCooperateInfoResVo();
|
|
|
|
|
+ queryAllCooperateInfoResVo.setStatus(item.getStatus());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setStatusName(CooperateStatusEnum.getName(item.getStatus()));
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviterEntId(item.getInviterEntId());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviteeEntId(item.getInviteeEntId());
|
|
|
|
|
+ EntCacheResDto entCacheResDto = entCacheResDtoMap.get(item.getInviterEntId());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviterEntName(Objects.nonNull(entCacheResDto) ? entCacheResDto.getFirmName() : "");
|
|
|
|
|
+ EntCacheResDto entCacheResDto1 = entCacheResDtoMap.get(item.getInviteeEntId());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviteeEntName(Objects.nonNull(entCacheResDto1) ? entCacheResDto1.getFirmName() : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setCooperateTypes(item.getTypes());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setEnt1(item.getTypes().contains(String.valueOf(CooperateTypeEnum.SUPPLIER.getCode())) ? "是" : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setEnt2(item.getTypes().contains(String.valueOf(CooperateTypeEnum.PURCHASER.getCode())) ? "是" : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setEnt3(item.getTypes().contains(String.valueOf(CooperateTypeEnum.CONSIGN.getCode())) ? "是" : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setEnt4(item.getTypes().contains(String.valueOf(CooperateTypeEnum.CARRIAGE.getCode())) ? "是" : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviterContacts(item.getInviterContacts());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviterContactsPhone(item.getInviterPhone());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviteeContacts(item.getInviteeContacts());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setInviteeContactsPhone(item.getInviteePhone());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setCreateTime(item.getCreateTime());
|
|
|
|
|
+
|
|
|
|
|
+ UserCacheResDto userCacheResDto = userCacheResDtoMap.get(item.getCreateBy());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setCreateByName(Objects.nonNull(userCacheResDto) ? userCacheResDto.getName(): "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setPhone(Objects.nonNull(userCacheResDto) ? userCacheResDto.getPhone() : "");
|
|
|
|
|
+ queryAllCooperateInfoResVo.setUpdateTime(item.getUpdateTime());
|
|
|
|
|
+ queryAllCooperateInfoResVo.setRemark(item.getRemark());
|
|
|
|
|
+ result.add(queryAllCooperateInfoResVo);
|
|
|
|
|
+ });
|
|
|
|
|
+ return result;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @param reqVo 查询入参
|
|
|
|
|
+ * @desc: 导出
|
|
|
|
|
+ * @author: czh
|
|
|
|
|
+ * @date: 2023/7/11
|
|
|
|
|
+ */
|
|
|
|
|
+ public void exportAllCooperateInfo(CooperateManageQueryReqVo reqVo, HttpServletResponse response) {
|
|
|
|
|
+ List<CooperateManageQueryResDto> list = kwmCooperateMapper.queryAllCooperateInfoList(getQueryAllCooperateInfoReqDto(reqVo));
|
|
|
|
|
+ if (CollectionUtils.isEmpty(list)) {
|
|
|
|
|
+ throw new SystemException("导出数据为空");
|
|
|
|
|
+ }
|
|
|
|
|
+ ExcelUtil.downData(response, QueryAllCooperateInfoExcel.class, BeanUtils.copyToList(getAllCooperateInfoVo(list), QueryAllCooperateInfoExcel.class));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|