Commit 1bfda8fc by yxdubhe_bot

merge:feature-20230410-optimize:operator:hzhuyuanyuan@corp.netease.com:auto_bran…

merge:feature-20230410-optimize:operator:hzhuyuanyuan@corp.netease.com:auto_branch_merge_by_branchService_end
parents 850a2fb8 c2aa31ea
Pipeline #47667 passed with stages
in 2 minutes 10 seconds
...@@ -43,7 +43,7 @@ spring.redis.host=10.131.99.201 ...@@ -43,7 +43,7 @@ spring.redis.host=10.131.99.201
spring.redis.port=11030 spring.redis.port=11030
# supplier # supplier
supplier.url=http://127.0.0.1:8550/proxy/test-v1.yanxuan-supplier-ms.service.mailsaas supplier.url=http://127.0.0.1:8550/proxy/test.yanxuan-supplier-ms.service.mailsaas
### des\u914D\u7F6E ### des\u914D\u7F6E
# \u5BFC\u51FA\u6587\u4EF6\u4E0A\u4F20\u5230\u54EA\u4E2A\u670D\u52A1\u5668\uFF0C\u6709test\u548Conline\u53EF\u9009 # \u5BFC\u51FA\u6587\u4EF6\u4E0A\u4F20\u5230\u54EA\u4E2A\u670D\u52A1\u5668\uFF0C\u6709test\u548Conline\u53EF\u9009
......
...@@ -25,6 +25,8 @@ import java.util.stream.Collectors; ...@@ -25,6 +25,8 @@ import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid; import javax.validation.Valid;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.*;
import com.netease.mail.yanxuan.change.integration.rpc.RpcResultException;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
...@@ -80,14 +82,6 @@ import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowFile; ...@@ -80,14 +82,6 @@ import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowFile;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowListQueryReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowListQueryReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowSubmitReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowSubmitReq;
import com.netease.mail.yanxuan.change.dal.meta.model.rpc.GoodsResponseRpc; import com.netease.mail.yanxuan.change.dal.meta.model.rpc.GoodsResponseRpc;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.BasicChangeFlowVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.CategoryInfoVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.ChangeFlowExecVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.ChangeFlowListVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.ChangeFlowVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.ItemBasicInfoVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.ItemVO;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.PageVO;
import com.netease.mail.yanxuan.change.integration.email.enums.EmailTemplateEnum; import com.netease.mail.yanxuan.change.integration.email.enums.EmailTemplateEnum;
import com.netease.mail.yanxuan.change.integration.email.service.IEmailService; import com.netease.mail.yanxuan.change.integration.email.service.IEmailService;
import com.netease.mail.yanxuan.change.integration.excel.ChangeFlowExcelDTO; import com.netease.mail.yanxuan.change.integration.excel.ChangeFlowExcelDTO;
...@@ -190,6 +184,9 @@ public class ChangeFlowBiz { ...@@ -190,6 +184,9 @@ public class ChangeFlowBiz {
} }
// 工单负责人 // 工单负责人
String changeCommander = null; String changeCommander = null;
if (!CreateSourceEnum.TONG_ZHOU.getType().equals(changeFlowCreateReq.getCreateSource())) {
changeCommander = uid;
} else {
// 获取工单负责人 // 获取工单负责人
GoodsResponseRpc goodsResponseRpc = null; GoodsResponseRpc goodsResponseRpc = null;
try { try {
...@@ -197,10 +194,11 @@ public class ChangeFlowBiz { ...@@ -197,10 +194,11 @@ public class ChangeFlowBiz {
.queryCommanderInfo(ChangeCommanderPO.builder().parentChangeClassId(parentChangeClassId) .queryCommanderInfo(ChangeCommanderPO.builder().parentChangeClassId(parentChangeClassId)
.sonChangeClassId(sonChangeClassId).changeSupplierId(changeFlowCreateReq.getChangeSupplier()) .sonChangeClassId(sonChangeClassId).changeSupplierId(changeFlowCreateReq.getChangeSupplier())
.goodsInfos(itemIds).flowCreator(uid).createSource(changeFlowCreateReq.getCreateSource()) .goodsInfos(itemIds).flowCreator(uid).createSource(changeFlowCreateReq.getCreateSource())
.supplier(changeFlowCreateReq.getSupplier()).build()); .supplier(changeFlowCreateReq.getSupplier()).build(), changeFlowCreateReq.getChangeCommander());
changeCommander = goodsResponseRpc.getEmail(); changeCommander = goodsResponseRpc.getEmail();
} catch (Exception e) { } catch (Exception e) {
log.error("[op:queryCommanderInfo] error, goodsResponseRpc:{}, e:{}", JSON.toJSONString(goodsResponseRpc),e); log.error("[op:queryCommanderInfo] error, goodsResponseRpc:{}, e:{}", JSON.toJSONString(goodsResponseRpc), e);
}
} }
Assert.notNull(changeCommander, "未查询到负责人信息"); Assert.notNull(changeCommander, "未查询到负责人信息");
// 检验是否需要资料 // 检验是否需要资料
...@@ -458,6 +456,7 @@ public class ChangeFlowBiz { ...@@ -458,6 +456,7 @@ public class ChangeFlowBiz {
if (ChangeSubjectEnum.PRODUCT.getType().equals(changeFlowCreateReq.getChangeSubject())) { if (ChangeSubjectEnum.PRODUCT.getType().equals(changeFlowCreateReq.getChangeSubject())) {
// 当变更类型是商品时有值 // 当变更类型是商品时有值
changeRecord.setChangeItem(changeFlowCreateReq.getChangeItems()); changeRecord.setChangeItem(changeFlowCreateReq.getChangeItems());
changeRecord.setChangeSku(changeFlowCreateReq.getChangeSkus());
} }
if (ChangeSubjectEnum.SUPPLIER.getType().equals(changeFlowCreateReq.getChangeSubject())) { if (ChangeSubjectEnum.SUPPLIER.getType().equals(changeFlowCreateReq.getChangeSubject())) {
changeRecord.setChangeSupplier(changeFlowCreateReq.getChangeSupplier()); changeRecord.setChangeSupplier(changeFlowCreateReq.getChangeSupplier());
...@@ -475,6 +474,7 @@ public class ChangeFlowBiz { ...@@ -475,6 +474,7 @@ public class ChangeFlowBiz {
changeRecord.setCreateTime(DateUtils.getCurrentTime()); changeRecord.setCreateTime(DateUtils.getCurrentTime());
changeRecord.setUpdateTime(DateUtils.getCurrentTime()); changeRecord.setUpdateTime(DateUtils.getCurrentTime());
changeRecord.setCreator(uid); changeRecord.setCreator(uid);
changeRecord.setChangeProfitAmount(changeFlowCreateReq.getChangeProfitAmount());
return changeRecord; return changeRecord;
} }
...@@ -532,6 +532,7 @@ public class ChangeFlowBiz { ...@@ -532,6 +532,7 @@ public class ChangeFlowBiz {
.collect(Collectors.toList()); .collect(Collectors.toList());
changeRecord.setParticipateChangeExecDepartment(JSON.toJSONString(execDepartmentList)); changeRecord.setParticipateChangeExecDepartment(JSON.toJSONString(execDepartmentList));
changeRecord.setChangeItem(changeFlowSubmitReq.getChangeItems()); changeRecord.setChangeItem(changeFlowSubmitReq.getChangeItems());
changeRecord.setChangeSku(changeFlowSubmitReq.getChangeSkus());
changeRecord.setChangeSupplier(changeFlowSubmitReq.getChangeSupplier()); changeRecord.setChangeSupplier(changeFlowSubmitReq.getChangeSupplier());
changeRecord.setChangeReason(changeFlowSubmitReq.getChangeReason()); changeRecord.setChangeReason(changeFlowSubmitReq.getChangeReason());
changeRecord.setChangeContent(changeFlowSubmitReq.getChangeContent()); changeRecord.setChangeContent(changeFlowSubmitReq.getChangeContent());
...@@ -541,6 +542,7 @@ public class ChangeFlowBiz { ...@@ -541,6 +542,7 @@ public class ChangeFlowBiz {
changeRecord.setChangeProfitDesc(changeFlowSubmitReq.getChangeProfitDesc()); changeRecord.setChangeProfitDesc(changeFlowSubmitReq.getChangeProfitDesc());
changeRecord.setChangeConfirmResultTime(changeFlowSubmitReq.getChangeConfirmResultTime()); changeRecord.setChangeConfirmResultTime(changeFlowSubmitReq.getChangeConfirmResultTime());
changeRecord.setUpdateTime(DateUtils.getCurrentTime()); changeRecord.setUpdateTime(DateUtils.getCurrentTime());
changeRecord.setChangeProfitAmount(changeFlowSubmitReq.getChangeProfitAmount());
// 提交工单 // 提交工单
String submitNode = flowService.submitFlow(flowId.toString(), flowDataDTO, uid, String submitNode = flowService.submitFlow(flowId.toString(), flowDataDTO, uid,
ChangeFlowEnum.CHANGE_FLOW_SUBMIT.getTopoId(), JSON.toJSONString(content), true, ChangeFlowEnum.CHANGE_FLOW_SUBMIT.getTopoId(), JSON.toJSONString(content), true,
...@@ -912,10 +914,22 @@ public class ChangeFlowBiz { ...@@ -912,10 +914,22 @@ public class ChangeFlowBiz {
List<ChangeFlowFile> changeFileList = changeFileService.getChangeFileList(changeRecord.getId()); List<ChangeFlowFile> changeFileList = changeFileService.getChangeFileList(changeRecord.getId());
changeFlowVO.setFiles(changeFileList); changeFlowVO.setFiles(changeFileList);
changeFlowVO.setChangeProfit(changeRecord.getChangeProfit()); changeFlowVO.setChangeProfit(changeRecord.getChangeProfit());
changeFlowVO.setChangeProfitAmount(changeRecord.getChangeProfitAmount());
changeFlowVO.setChangeProfitDesc(changeRecord.getChangeProfitDesc()); changeFlowVO.setChangeProfitDesc(changeRecord.getChangeProfitDesc());
String itemJsonStr = changeRecord.getChangeItem(); String itemJsonStr = changeRecord.getChangeItem();
String changeSkuJson = changeRecord.getChangeSku();
if (StringUtils.isNotBlank(itemJsonStr)) { if (StringUtils.isNotBlank(itemJsonStr)) {
List<ItemVO> itemList = JSON.parseArray(itemJsonStr, ItemVO.class); List<ItemVO> itemList = JSON.parseArray(itemJsonStr, ItemVO.class);
List<ItemSkuVO> itemSkuVOS = new ArrayList<>();
if (StringUtils.isNotBlank(changeSkuJson)) {
itemSkuVOS.addAll(JSON.parseArray(changeSkuJson, ItemSkuVO.class));
}
itemList.forEach(i -> {
Optional<ItemSkuVO> anySkuInfo = itemSkuVOS.stream().filter(s -> s.getItemId().equals(i.getItemId())).findAny();
if (anySkuInfo.isPresent()) {
i.setSkuIds(anySkuInfo.get().getSkuId());
}
});
changeFlowVO.setChangeItems(itemList); changeFlowVO.setChangeItems(itemList);
// 变更执行/结果确认/完结节点,展示变更商品基础信息 // 变更执行/结果确认/完结节点,展示变更商品基础信息
String flowNode = changeRecord.getFlowNode(); String flowNode = changeRecord.getFlowNode();
...@@ -979,6 +993,10 @@ public class ChangeFlowBiz { ...@@ -979,6 +993,10 @@ public class ChangeFlowBiz {
log.debug("[detail] itemId:{}, changeGoodsPrincipalPO:{}", itemId, log.debug("[detail] itemId:{}, changeGoodsPrincipalPO:{}", itemId,
JSON.toJSONString(changeGoodsPrincipalPO)); JSON.toJSONString(changeGoodsPrincipalPO));
itemBasicInfoVO.setChangeGoodsPrincipal(changeGoodsPrincipalPO); itemBasicInfoVO.setChangeGoodsPrincipal(changeGoodsPrincipalPO);
Optional<ItemVO> anyHasSku = itemList.stream().filter(i -> i.getItemId().equals(itemId)).findAny();
if (anyHasSku.isPresent()) {
itemBasicInfoVO.setSkuIds(anyHasSku.get().getSkuIds());
}
return itemBasicInfoVO; return itemBasicInfoVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
changeFlowVO.setItemBasicInfoList(itemBasicInfoVOS); changeFlowVO.setItemBasicInfoList(itemBasicInfoVOS);
...@@ -1055,6 +1073,18 @@ public class ChangeFlowBiz { ...@@ -1055,6 +1073,18 @@ public class ChangeFlowBiz {
public ChangeFlowListVO query(Integer page, Integer pageSize, ChangeFlowListQueryReq changeFlowListQueryReq) { public ChangeFlowListVO query(Integer page, Integer pageSize, ChangeFlowListQueryReq changeFlowListQueryReq) {
log.info("[query] page:{}, pageSize:{}, changeFlowListQueryReq:{}", page, pageSize, log.info("[query] page:{}, pageSize:{}, changeFlowListQueryReq:{}", page, pageSize,
JSON.toJSONString(changeFlowListQueryReq)); JSON.toJSONString(changeFlowListQueryReq));
if (StringUtils.isNotBlank(changeFlowListQueryReq.getChangeExecUser())) {
List<Long> recordIds = changeFlowExecService.queryByExecUser(changeFlowListQueryReq.getChangeExecUser());
changeFlowListQueryReq.setChangeRecordIds(recordIds);
log.info("recordIds: {}", recordIds);
if (CollectionUtils.isEmpty(recordIds)) {
ChangeFlowListVO changeFlowListVO = new ChangeFlowListVO();
PageVO pageVO = buildPageVo(0L, pageSize, page);
changeFlowListVO.setPageVo(pageVO);
changeFlowListVO.setChangeFlowList(new ArrayList<>());
return changeFlowListVO;
}
}
//进行分页 //进行分页
PageHelper.startPage(page, pageSize); PageHelper.startPage(page, pageSize);
PageInfo<ChangeRecord> changeRecordPageInfo = new PageInfo<>( PageInfo<ChangeRecord> changeRecordPageInfo = new PageInfo<>(
...@@ -1076,7 +1106,19 @@ public class ChangeFlowBiz { ...@@ -1076,7 +1106,19 @@ public class ChangeFlowBiz {
changeFlowVO.setChangeCommander(c.getChangeCommander()); changeFlowVO.setChangeCommander(c.getChangeCommander());
String itemJsonStr = c.getChangeItem(); String itemJsonStr = c.getChangeItem();
if (StringUtils.isNotBlank(itemJsonStr)) { if (StringUtils.isNotBlank(itemJsonStr)) {
changeFlowVO.setChangeItems(JSON.parseArray(itemJsonStr, ItemVO.class)); List<ItemVO> itemVOS = JSON.parseArray(itemJsonStr, ItemVO.class);
String changeSkuStr = c.getChangeSku();
if (StringUtils.isNotBlank(changeSkuStr)) {
List<ItemSkuVO> itemSkuVOS = JSON.parseArray(changeSkuStr, ItemSkuVO.class);
itemVOS.forEach(i -> {
Optional<ItemSkuVO> anySkuInfo = itemSkuVOS.stream()
.filter(s -> s.getItemId().equals(i.getItemId())).findAny();
if (anySkuInfo.isPresent()) {
i.setSkuIds(anySkuInfo.get().getSkuId());
}
});
}
changeFlowVO.setChangeItems(itemVOS);
} }
changeFlowVO.setChangeSupplier(c.getChangeSupplier()); changeFlowVO.setChangeSupplier(c.getChangeSupplier());
changeFlowVO.setChangeState(c.getState() == 3 ? ChangeStatusEnum.IN.getStatus() : c.getState()); changeFlowVO.setChangeState(c.getState() == 3 ? ChangeStatusEnum.IN.getStatus() : c.getState());
......
...@@ -36,4 +36,11 @@ public interface ChangeFlowExecService { ...@@ -36,4 +36,11 @@ public interface ChangeFlowExecService {
Integer deleteByChangeRecordId(Long id); Integer deleteByChangeRecordId(Long id);
void saveRecord(ChangeExecRecord exec); void saveRecord(ChangeExecRecord exec);
/**
* 查询包含执行人的工单
* @param changeExecUser
* @return
*/
List<Long> queryByExecUser(String changeExecUser);
} }
\ No newline at end of file
...@@ -13,7 +13,9 @@ public interface ISupplierItemService { ...@@ -13,7 +13,9 @@ public interface ISupplierItemService {
* @param itemName * @param itemName
* @param page * @param page
* @param pageSize * @param pageSize
* @param skuId
* @return * @return
*/ */
SupplierItemPageVO supplierGoodsInfoBySupplier(SupplierGoodsInfoReq supplierGoodsInfoReq, String itemId, String itemName, Integer page, Integer pageSize); SupplierItemPageVO supplierGoodsInfoBySupplier(SupplierGoodsInfoReq supplierGoodsInfoReq, String itemId,
String itemName, Integer page, Integer pageSize, String skuId);
} }
...@@ -6,7 +6,6 @@ import java.util.Map; ...@@ -6,7 +6,6 @@ import java.util.Map;
import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeCommanderPO; import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeCommanderPO;
import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeGoodsPrincipalPO; import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeGoodsPrincipalPO;
import com.netease.mail.yanxuan.change.dal.meta.model.po.QueryCommanderEmailReq; import com.netease.mail.yanxuan.change.dal.meta.model.po.QueryCommanderEmailReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCreateReq;
import com.netease.mail.yanxuan.change.dal.meta.model.rpc.CommanderResponse; import com.netease.mail.yanxuan.change.dal.meta.model.rpc.CommanderResponse;
import com.netease.mail.yanxuan.change.dal.meta.model.rpc.GoodsResponseRpc; import com.netease.mail.yanxuan.change.dal.meta.model.rpc.GoodsResponseRpc;
...@@ -20,9 +19,10 @@ public interface InteriorChangeConfigService { ...@@ -20,9 +19,10 @@ public interface InteriorChangeConfigService {
/** /**
* 根据变更信息 返回住变更负责人 * 根据变更信息 返回住变更负责人
* @param changeCommander * @param changeCommander
* @param commander
* @return * @return
*/ */
GoodsResponseRpc queryCommanderInfo(ChangeCommanderPO changeCommander); GoodsResponseRpc queryCommanderInfo(ChangeCommanderPO changeCommander, String commander);
/** /**
* 传入商品列表 返回商品信息 * 传入商品列表 返回商品信息
...@@ -36,6 +36,6 @@ public interface InteriorChangeConfigService { ...@@ -36,6 +36,6 @@ public interface InteriorChangeConfigService {
* @param req * @param req
* @return * @return
*/ */
CommanderResponse queryCommanderEmail(QueryCommanderEmailReq req); List<CommanderResponse> queryCommanderEmail(QueryCommanderEmailReq req);
} }
...@@ -64,4 +64,9 @@ public class ChangeFlowExecServiceImpl implements ChangeFlowExecService { ...@@ -64,4 +64,9 @@ public class ChangeFlowExecServiceImpl implements ChangeFlowExecService {
public void saveRecord(ChangeExecRecord exec) { public void saveRecord(ChangeExecRecord exec) {
changeExecRecordMapper.insertSelective(exec); changeExecRecordMapper.insertSelective(exec);
} }
@Override
public List<Long> queryByExecUser(String changeExecUser) {
return changeExecRecordMapper.queryByUser("%" + changeExecUser + "%");
}
} }
package com.netease.mail.yanxuan.change.biz.service.impl; package com.netease.mail.yanxuan.change.biz.service.impl;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
...@@ -24,11 +19,7 @@ import com.netease.mail.yanxuan.change.biz.service.InteriorChangeConfigService; ...@@ -24,11 +19,7 @@ import com.netease.mail.yanxuan.change.biz.service.InteriorChangeConfigService;
import com.netease.mail.yanxuan.change.biz.service.change.ChangeConfigService; import com.netease.mail.yanxuan.change.biz.service.change.ChangeConfigService;
import com.netease.mail.yanxuan.change.biz.service.rpc.ItemcenterRpcService; import com.netease.mail.yanxuan.change.biz.service.rpc.ItemcenterRpcService;
import com.netease.mail.yanxuan.change.common.bean.ResponseCode; import com.netease.mail.yanxuan.change.common.bean.ResponseCode;
import com.netease.mail.yanxuan.change.common.enums.ChangeCommanderEnum; import com.netease.mail.yanxuan.change.common.enums.*;
import com.netease.mail.yanxuan.change.common.enums.ChangePrincipalEnum;
import com.netease.mail.yanxuan.change.common.enums.ChangeSubjectEnum;
import com.netease.mail.yanxuan.change.common.enums.CreateSourceEnum;
import com.netease.mail.yanxuan.change.common.enums.SupplierChangePrincipalEnum;
import com.netease.mail.yanxuan.change.dal.entity.ChangeConfig; import com.netease.mail.yanxuan.change.dal.entity.ChangeConfig;
import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeCommanderPO; import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeCommanderPO;
import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeGoodsPrincipalPO; import com.netease.mail.yanxuan.change.dal.meta.model.po.ChangeGoodsPrincipalPO;
...@@ -93,10 +84,11 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -93,10 +84,11 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
* 接口不完整,关于商品的查询已经完成 供应商查询不完整接口已对接 具体返回值接口测试未完成 * 接口不完整,关于商品的查询已经完成 供应商查询不完整接口已对接 具体返回值接口测试未完成
* *
* @param changeCommander * @param changeCommander
* @param commander
* @return * @return
*/ */
@Override @Override
public GoodsResponseRpc queryCommanderInfo(ChangeCommanderPO changeCommander) { public GoodsResponseRpc queryCommanderInfo(ChangeCommanderPO changeCommander, String commander) {
GoodsResponseRpc rpc = new GoodsResponseRpc(); GoodsResponseRpc rpc = new GoodsResponseRpc();
//获取模板名称 通过一级变更类型 二级变更类型ID 定位模板 //获取模板名称 通过一级变更类型 二级变更类型ID 定位模板
ChangeConfig changeConfig = changeConfigService.queryChangeType(changeCommander.getParentChangeClassId(), ChangeConfig changeConfig = changeConfigService.queryChangeType(changeCommander.getParentChangeClassId(),
...@@ -115,8 +107,10 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -115,8 +107,10 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
//发起人; //发起人;
// 如果是同舟端,发起人以商品开发兜底 // 如果是同舟端,发起人以商品开发兜底
if (changeCommander.getCreateSource().equals(CreateSourceEnum.TONG_ZHOU.getType())) { if (changeCommander.getCreateSource().equals(CreateSourceEnum.TONG_ZHOU.getType())) {
return queryChangeSupplier(ChangeCommanderEnum.SUPPLIERS_ASSOCIATED, changeCommander.getSupplier(), List<GoodsResponseRpc> goodsResponseRpcList = queryChangeSupplier(
ChangeCommanderEnum.SUPPLIERS_ASSOCIATED, changeCommander.getSupplier(),
SupplierChangePrincipalEnum.GOODS_BU.getName()); SupplierChangePrincipalEnum.GOODS_BU.getName());
return goodsResponseRpcList.get(0);
} }
rpc.setEmail(changeCommander.getFlowCreator()); rpc.setEmail(changeCommander.getFlowCreator());
return rpc; return rpc;
...@@ -127,13 +121,27 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -127,13 +121,27 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
return rpc; return rpc;
} }
if (Objects.equals(ChangeSubjectEnum.PRODUCT.getType(), changeConfig.getChangeSubject())) { if (Objects.equals(ChangeSubjectEnum.PRODUCT.getType(), changeConfig.getChangeSubject())) {
if (ChangeCommanderEnum.GOODS_ASSOCIATED.equals(changeCommanderEnum)
&& SupplierChangePrincipalEnum.PURCHASE.getName().equals(changeConfig.getChangeCommander())) {
GoodsResponseRpc goodsResponseRpc = new GoodsResponseRpc();
goodsResponseRpc.setEmail(commander);
return goodsResponseRpc;
}
//商品变更 //商品变更
return queryGoodsCommander(changeCommanderEnum, changeCommander.getGoodsInfos(), List<GoodsResponseRpc> goodsResponseRpcList = queryGoodsCommander(changeCommanderEnum, changeCommander.getGoodsInfos(),
changeConfig.getChangeCommander()); changeConfig.getChangeCommander());
return goodsResponseRpcList.get(0);
} else if (Objects.equals(ChangeSubjectEnum.SUPPLIER.getType(), changeConfig.getChangeSubject())) { } else if (Objects.equals(ChangeSubjectEnum.SUPPLIER.getType(), changeConfig.getChangeSubject())) {
if (ChangeCommanderEnum.SUPPLIERS_ASSOCIATED.equals(changeCommanderEnum)
&& SupplierChangePrincipalEnum.PURCHASE.getName().equals(changeConfig.getChangeCommander())) {
GoodsResponseRpc goodsResponseRpc = new GoodsResponseRpc();
goodsResponseRpc.setEmail(commander);
return goodsResponseRpc;
}
//供应商 采购 计划 SQE //供应商 采购 计划 SQE
return queryChangeSupplier(changeCommanderEnum, changeCommander.getChangeSupplierId(), List<GoodsResponseRpc> goodsResponseRpcList = queryChangeSupplier(changeCommanderEnum, changeCommander.getChangeSupplierId(),
changeConfig.getChangeCommander()); changeConfig.getChangeCommander());
return goodsResponseRpcList.get(0);
} }
//其他变更 备注 其他变更之后固定人 和发起人在上面判断会被排除掉 changeConfig.getChangeCommander(); //其他变更 备注 其他变更之后固定人 和发起人在上面判断会被排除掉 changeConfig.getChangeCommander();
return null; return null;
...@@ -150,17 +158,12 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -150,17 +158,12 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
* 商品的关联角色 ChangeCommanderEnum * 商品的关联角色 ChangeCommanderEnum
* @return * @return
*/ */
private GoodsResponseRpc queryGoodsCommander(ChangeCommanderEnum commanderEnum, List<Long> goodsInfos, private List<GoodsResponseRpc> queryGoodsCommander(ChangeCommanderEnum commanderEnum, List<Long> goodsInfos,
String commander) { String commander) {
if (!commanderEnum.getId().equals(ChangeCommanderEnum.GOODS_ASSOCIATED.getId()) if (!commanderEnum.getId().equals(ChangeCommanderEnum.GOODS_ASSOCIATED.getId())
|| CollectionUtils.isEmpty(goodsInfos) || commander == null) { || CollectionUtils.isEmpty(goodsInfos) || commander == null) {
return null; return null;
} }
Map<String, GoodsResponseRpc> map = new HashMap<String, GoodsResponseRpc>();
//记录最大出现次数
int temp = 0;
//记录最大值
GoodsResponseRpc responseRpc = new GoodsResponseRpc();
//记录出现的所有值 //记录出现的所有值
List<GoodsResponseRpc> emails = new ArrayList<GoodsResponseRpc>(); List<GoodsResponseRpc> emails = new ArrayList<GoodsResponseRpc>();
//遍历取出所有商品关联的人 //遍历取出所有商品关联的人
...@@ -203,30 +206,24 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -203,30 +206,24 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
} }
} }
//逻辑发生变更 //逻辑发生变更
for (GoodsResponseRpc email: emails) { /*
if (!map.containsKey(email.getName())) { * for (GoodsResponseRpc email: emails) { if (!map.containsKey(email.getName())) { email.setOccurrenceNumber(1);
email.setOccurrenceNumber(1); * } else { GoodsResponseRpc goodsResponseRpc = map.get(email.getName());
} else { * email.setOccurrenceNumber(goodsResponseRpc.getOccurrenceNumber() + 1); if (temp <
GoodsResponseRpc goodsResponseRpc = map.get(email.getName()); * goodsResponseRpc.getOccurrenceNumber()) { temp = goodsResponseRpc.getOccurrenceNumber(); responseRpc =
email.setOccurrenceNumber(goodsResponseRpc.getOccurrenceNumber() + 1); * goodsResponseRpc; } } map.put(email.getName(), email); } if (responseRpc.getName() == null) {
if (temp < goodsResponseRpc.getOccurrenceNumber()) { * Iterator<GoodsResponseRpc> iterator = map.values().iterator(); responseRpc = iterator.next(); }
temp = goodsResponseRpc.getOccurrenceNumber(); */
responseRpc = goodsResponseRpc; if (CollectionUtils.isEmpty(emails)) {
} //记录最大值
} GoodsResponseRpc responseRpc = new GoodsResponseRpc();
map.put(email.getName(), email);
}
if (responseRpc.getName() == null) {
Iterator<GoodsResponseRpc> iterator = map.values().iterator();
responseRpc = iterator.next();
}
if (StringUtils.isBlank(responseRpc.getEmail())) {
Integer byType = ChangePrincipalEnum.getByType(commander); Integer byType = ChangePrincipalEnum.getByType(commander);
if (null != byType) { if (null != byType) {
this.goodsGetEmail(responseRpc, byType); this.goodsGetEmail(responseRpc, byType);
} }
emails.add(responseRpc);
} }
return responseRpc; return emails;
} }
/** /**
...@@ -240,9 +237,9 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -240,9 +237,9 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
* 供应商关联角色 * 供应商关联角色
* @return * @return
*/ */
private GoodsResponseRpc queryChangeSupplier(ChangeCommanderEnum commanderEnum, String changeSupplierId, private List<GoodsResponseRpc> queryChangeSupplier(ChangeCommanderEnum commanderEnum, String changeSupplierId,
String commander) { String commander) {
GoodsResponseRpc goodsResponseRpc = new GoodsResponseRpc(); List<GoodsResponseRpc> goodsResponseRpcList = new ArrayList<>();
if (!commanderEnum.getId().equals(ChangeCommanderEnum.SUPPLIERS_ASSOCIATED.getId()) || changeSupplierId == null if (!commanderEnum.getId().equals(ChangeCommanderEnum.SUPPLIERS_ASSOCIATED.getId()) || changeSupplierId == null
|| commander == null) { || commander == null) {
return null; return null;
...@@ -268,17 +265,24 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -268,17 +265,24 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
List<SupplierUserRsp> listAjaxResponse = supplierInfoService.querySupplierRelatedUser(req); List<SupplierUserRsp> listAjaxResponse = supplierInfoService.querySupplierRelatedUser(req);
log.debug("[querySupplierRelatedUser] response:{}", JSON.toJSONString(listAjaxResponse)); log.debug("[querySupplierRelatedUser] response:{}", JSON.toJSONString(listAjaxResponse));
if (!CollectionUtils.isEmpty(listAjaxResponse)) { if (!CollectionUtils.isEmpty(listAjaxResponse)) {
SupplierUserRsp supplierUserRsp = listAjaxResponse.get(0); Optional<SupplierUserRsp> anySupplierUser = listAjaxResponse.stream()
Map<String, String> uid2NameMap = supplierUserRsp.getUid2NameMap(); .filter(i -> i.getSupplierId().equals(changeSupplierId)).findAny();
for (String key : uid2NameMap.keySet()) { if (anySupplierUser.isPresent()) {
Map<String, String> uid2NameMap = anySupplierUser.get().getUid2NameMap();
for (String key: uid2NameMap.keySet()) {
GoodsResponseRpc goodsResponseRpc = new GoodsResponseRpc();
goodsResponseRpc.setName(uid2NameMap.get(key)); goodsResponseRpc.setName(uid2NameMap.get(key));
goodsResponseRpc.setEmail(key); goodsResponseRpc.setEmail(key);
goodsResponseRpcList.add(goodsResponseRpc);
}
} }
} }
if (StringUtils.isBlank(goodsResponseRpc.getEmail())) { if (CollectionUtils.isEmpty(goodsResponseRpcList)) {
GoodsResponseRpc goodsResponseRpc = new GoodsResponseRpc();
this.getEmail(goodsResponseRpc, req.getSearchType()); this.getEmail(goodsResponseRpc, req.getSearchType());
goodsResponseRpcList.add(goodsResponseRpc);
} }
return goodsResponseRpc; return goodsResponseRpcList;
} }
/** /**
...@@ -320,7 +324,7 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -320,7 +324,7 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
@Override @Override
public Map<Long, ChangeGoodsPrincipalPO> queryGoodsPrincipalInfo(List<Long> itemIds) { public Map<Long, ChangeGoodsPrincipalPO> queryGoodsPrincipalInfo(List<Long> itemIds) {
Map<Long, ChangeGoodsPrincipalPO> map = new HashMap<>(); Map<Long, ChangeGoodsPrincipalPO> map = new HashMap<>();
for (Long itemId : itemIds) { for (Long itemId: itemIds) {
map.put(itemId, new ChangeGoodsPrincipalPO()); map.put(itemId, new ChangeGoodsPrincipalPO());
} }
//商品BU //商品BU
...@@ -334,14 +338,16 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -334,14 +338,16 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
//商品采购 //商品采购
String GoodsPurchase = supplierSendService.queryGoodsPurchase(itemIds); String GoodsPurchase = supplierSendService.queryGoodsPurchase(itemIds);
JSONObject jsonObject = JSONObject.parseObject(GoodsPurchase); JSONObject jsonObject = JSONObject.parseObject(GoodsPurchase);
List<GoodsPurchaseRpc> purchaseRpcs = JSONObject.parseArray(jsonObject.get("data").toString(), GoodsPurchaseRpc.class); List<GoodsPurchaseRpc> purchaseRpcs = JSONObject.parseArray(jsonObject.get("data").toString(),
for (GoodsPurchaseRpc rpc : purchaseRpcs) { GoodsPurchaseRpc.class);
for (GoodsPurchaseRpc rpc: purchaseRpcs) {
map.get(rpc.getItemId().longValue()).setPurchaseName(rpc.getSupplierTraceBusinessName()); map.get(rpc.getItemId().longValue()).setPurchaseName(rpc.getSupplierTraceBusinessName());
map.get(rpc.getItemId().longValue()).setPurchaseEmail(rpc.getSupplierTraceBusiness()); map.get(rpc.getItemId().longValue()).setPurchaseEmail(rpc.getSupplierTraceBusiness());
goodsRpc(ChangePrincipalEnum.PURCHASE.getType(), rpc.getSupplierTraceBusinessName(), map.get(rpc.getItemId().longValue())); goodsRpc(ChangePrincipalEnum.PURCHASE.getType(), rpc.getSupplierTraceBusinessName(),
map.get(rpc.getItemId().longValue()));
} }
//SQE //SQE
for (Long itemId : itemIds) { for (Long itemId: itemIds) {
String sqe = qcApiRpcService.getDetail(itemId.intValue()); String sqe = qcApiRpcService.getDetail(itemId.intValue());
logger.info("[queryGoodsPrincipalInfo] sqe:{}", sqe); logger.info("[queryGoodsPrincipalInfo] sqe:{}", sqe);
JSONObject jsonObject1 = JSONObject.parseObject(sqe); JSONObject jsonObject1 = JSONObject.parseObject(sqe);
...@@ -357,61 +363,75 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -357,61 +363,75 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
} }
@Override @Override
public CommanderResponse queryCommanderEmail(QueryCommanderEmailReq req) { public List<CommanderResponse> queryCommanderEmail(QueryCommanderEmailReq req) {
Integer changeExecUserType = req.getChangeExecUserType(); Integer changeExecUserType = req.getChangeExecUserType();
String changeExecUser = req.getChangeExecUser(); String changeExecUser = req.getChangeExecUser();
ChangeCommanderEnum changeCommanderEnum = ChangeCommanderEnum.getChangeCommanderEnum(changeExecUserType); ChangeCommanderEnum changeCommanderEnum = ChangeCommanderEnum.getChangeCommanderEnum(changeExecUserType);
log.info("[queryCommanderEmail] req:{},changeCommanderEnum:{}", JSON.toJSONString(req), changeCommanderEnum); log.info("[queryCommanderEmail] req:{},changeCommanderEnum:{}", JSON.toJSONString(req), changeCommanderEnum);
Assert.notNull(changeCommanderEnum, "变更负责人类型错误"); Assert.notNull(changeCommanderEnum, "变更负责人类型错误");
CommanderResponse commanderResponse = new CommanderResponse();
switch (changeCommanderEnum) { switch (changeCommanderEnum) {
case COMMANDER_ORIGINATOR: case COMMANDER_ORIGINATOR:
// 如果是同舟端,发起人以商品开发兜底 // 如果是同舟端,发起人以商品开发兜底
if (req.getCreateSource().equals(CreateSourceEnum.TONG_ZHOU.getType())) { if (req.getCreateSource().equals(CreateSourceEnum.TONG_ZHOU.getType())) {
List<CommanderResponse> commanderResponseList = new ArrayList<>();
try { try {
GoodsResponseRpc goodsResponseRpc = queryChangeSupplier( List<GoodsResponseRpc> goodsResponseRpcList = queryChangeSupplier(
ChangeCommanderEnum.SUPPLIERS_ASSOCIATED, req.getChangeSupplier(), ChangeCommanderEnum.SUPPLIERS_ASSOCIATED, req.getChangeSupplier(),
SupplierChangePrincipalEnum.GOODS_BU.getName()); SupplierChangePrincipalEnum.GOODS_BU.getName());
commanderResponse.setName(goodsResponseRpc.getName()); goodsResponseRpcList.forEach(i -> {
commanderResponse.setEmail(goodsResponseRpc.getEmail()); CommanderResponse commanderResponse = new CommanderResponse();
commanderResponse.setName(i.getName());
commanderResponse.setEmail(i.getEmail());
commanderResponseList.add(commanderResponse);
});
} catch (Exception e) { } catch (Exception e) {
log.error("[queryCommanderEmail] goodsResponseRpc error,e{}", e); log.error("[queryCommanderEmail] goodsResponseRpc error,e{}", e);
} }
return commanderResponse; return commanderResponseList;
} else { } else {
return null; return new ArrayList<>();
} }
case FIXED_PERSON: case FIXED_PERSON:
return null; return new ArrayList<>();
case GOODS_ASSOCIATED: case GOODS_ASSOCIATED:
String changeItems = req.getChangeItems(); String changeItems = req.getChangeItems();
Assert.isTrue(StringUtils.isNotBlank(changeItems), "变更负责人为商品时,商品列表不可为空"); Assert.isTrue(StringUtils.isNotBlank(changeItems), "变更负责人为商品时,商品列表不可为空");
List<ItemVO> itemVOS = JSON.parseArray(changeItems, ItemVO.class); List<ItemVO> itemVOS = JSON.parseArray(changeItems, ItemVO.class);
List<Long> itemIdList = itemVOS.stream().map(ItemVO::getItemId).collect(Collectors.toList()); List<Long> itemIdList = itemVOS.stream().map(ItemVO::getItemId).collect(Collectors.toList());
List<CommanderResponse> commanderResponseList = new ArrayList<>();
try { try {
GoodsResponseRpc goodsResponseRpc = queryGoodsCommander(changeCommanderEnum, itemIdList, List<GoodsResponseRpc> goodsResponseRpcList = queryGoodsCommander(changeCommanderEnum, itemIdList,
changeExecUser); changeExecUser);
log.info("[queryCommanderEmail] queryGoodsCommander:{}", JSON.toJSONString(goodsResponseRpc)); log.info("[queryCommanderEmail] queryGoodsCommander:{}", JSON.toJSONString(goodsResponseRpcList));
commanderResponse.setName(goodsResponseRpc.getName()); goodsResponseRpcList.forEach(i -> {
commanderResponse.setEmail(goodsResponseRpc.getEmail()); CommanderResponse commanderResponse = new CommanderResponse();
commanderResponse.setName(i.getName());
commanderResponse.setEmail(i.getEmail());
commanderResponseList.add(commanderResponse);
});
} catch (Exception e) { } catch (Exception e) {
log.error("[queryGoodsCommander] error,e{}", e); log.error("[queryGoodsCommander] error,e{}", e);
} }
return commanderResponse; return commanderResponseList;
case SUPPLIERS_ASSOCIATED: case SUPPLIERS_ASSOCIATED:
String changeSupplier = req.getChangeSupplier(); String changeSupplier = req.getChangeSupplier();
Assert.isTrue(StringUtils.isNotBlank(changeSupplier), "变更负责人为供应商时,供应商不可为空"); Assert.isTrue(StringUtils.isNotBlank(changeSupplier), "变更负责人为供应商时,供应商不可为空");
List<CommanderResponse> commanderSupplierResponseList = new ArrayList<>();
try { try {
GoodsResponseRpc supplierResponseRpc = queryChangeSupplier(changeCommanderEnum, changeSupplier, List<GoodsResponseRpc> supplierResponseRpcList = queryChangeSupplier(changeCommanderEnum,
changeExecUser); changeSupplier, changeExecUser);
log.debug("[queryCommanderEmail] queryChangeSupplier:{}", JSON.toJSONString(supplierResponseRpc)); log.debug("[queryCommanderEmail] queryChangeSupplier:{}",
commanderResponse.setName(supplierResponseRpc.getName()); JSON.toJSONString(supplierResponseRpcList));
commanderResponse.setEmail(supplierResponseRpc.getEmail()); supplierResponseRpcList.forEach(i -> {
CommanderResponse commanderResponse = new CommanderResponse();
commanderResponse.setName(i.getName());
commanderResponse.setEmail(i.getEmail());
commanderSupplierResponseList.add(commanderResponse);
});
} catch (Exception e) { } catch (Exception e) {
log.error("[queryChangeSupplier] error,e{}", e); log.error("[queryChangeSupplier] error,e{}", e);
} }
return commanderResponse; return commanderSupplierResponseList;
default: default:
throw ExceptionFactory.createBiz(ResponseCode.COMMANDER_TYPE_NOT_EXIST, "变更负责人类型错误"); throw ExceptionFactory.createBiz(ResponseCode.COMMANDER_TYPE_NOT_EXIST, "变更负责人类型错误");
} }
...@@ -461,7 +481,7 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ ...@@ -461,7 +481,7 @@ public class InteriorChangeConfigServiceImpl implements InteriorChangeConfigServ
} }
private void getGoodsPrincipalNameEmailV2(Map<Long, ChangeGoodsPrincipalPO> map, List<ItemManagerTO> product) { private void getGoodsPrincipalNameEmailV2(Map<Long, ChangeGoodsPrincipalPO> map, List<ItemManagerTO> product) {
for (ItemManagerTO rpc : product) { for (ItemManagerTO rpc: product) {
ChangeGoodsPrincipalPO goodsRpc = map.get(rpc.getItemId()); ChangeGoodsPrincipalPO goodsRpc = map.get(rpc.getItemId());
String uid = null; String uid = null;
try { try {
......
package com.netease.mail.yanxuan.change.biz.service.impl; package com.netease.mail.yanxuan.change.biz.service.impl;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.netease.mail.yanxuan.change.biz.service.ISupplierItemService; import com.netease.mail.yanxuan.change.biz.service.ISupplierItemService;
import com.netease.mail.yanxuan.change.common.bean.AjaxResult; import com.netease.mail.yanxuan.change.common.bean.AjaxResult;
import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplierSendService; import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplierSendService;
import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierGoodsInfoReq; import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierGoodsInfoReq;
import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierGoodsInfoRsp; import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierGoodsInfoRsp;
import com.netease.mail.yanxuan.change.integration.item.ItemRpcService; import com.netease.mail.yanxuan.change.integration.item.ItemRpcService;
import com.netease.mail.yanxuan.change.integration.item.meta.SkuSpecTO;
import com.netease.mail.yanxuan.change.integration.item.meta.SkuSpecValueTO;
import com.netease.mail.yanxuan.change.integration.item.meta.SkuTo;
import com.netease.mail.yanxuan.change.integration.item.meta.SpuTO; import com.netease.mail.yanxuan.change.integration.item.meta.SpuTO;
import com.netease.mail.yanxuan.change.integration.item.param.BatchQuerySpuInfoParam; import com.netease.mail.yanxuan.change.integration.item.param.BatchQuerySpuInfoParam;
import com.netease.mail.yanxuan.change.integration.todo.PageVO; import com.netease.mail.yanxuan.change.integration.todo.PageVO;
import com.netease.mail.yanxuan.change.integration.todo.SupplierItemPageVO; import com.netease.mail.yanxuan.change.integration.todo.SupplierItemPageVO;
import com.netease.mail.yanxuan.change.integration.todo.SupplierItemSkuVO;
import com.netease.mail.yanxuan.change.integration.todo.SupplierItemVO; import com.netease.mail.yanxuan.change.integration.todo.SupplierItemVO;
import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse; import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList; import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@Service @Service
@Slf4j
public class SupplierItemServiceImpl implements ISupplierItemService { public class SupplierItemServiceImpl implements ISupplierItemService {
@Autowired @Autowired
...@@ -32,15 +41,22 @@ public class SupplierItemServiceImpl implements ISupplierItemService { ...@@ -32,15 +41,22 @@ public class SupplierItemServiceImpl implements ISupplierItemService {
private ItemRpcService itemRpcService; private ItemRpcService itemRpcService;
@Override @Override
public SupplierItemPageVO supplierGoodsInfoBySupplier(SupplierGoodsInfoReq supplierGoodsInfoReq, String itemId, String itemName, Integer page, Integer pageSize) { public SupplierItemPageVO supplierGoodsInfoBySupplier(SupplierGoodsInfoReq supplierGoodsInfoReq, String itemId,
AjaxResponse<List<SupplierGoodsInfoRsp>> listAjaxResponse = flowRpcSupplierSendService.supplierGoodsInfoBySupplier(supplierGoodsInfoReq); String itemName, Integer page, Integer pageSize, String skuId) {
AjaxResponse<List<SupplierGoodsInfoRsp>> listAjaxResponse = flowRpcSupplierSendService
.supplierGoodsInfoBySupplier(supplierGoodsInfoReq);
List<SupplierGoodsInfoRsp> data = listAjaxResponse.getData(); List<SupplierGoodsInfoRsp> data = listAjaxResponse.getData();
List<SpuTO> spuTOList = new ArrayList<>(); List<SpuTO> spuTOList = new ArrayList<>();
if (data != null) { if (data != null) {
Set<Long> fullItemIds = data.stream().map(SupplierGoodsInfoRsp::getItemId).collect(Collectors.toSet()); Set<Long> fullItemIds = data.stream().map(SupplierGoodsInfoRsp::getItemId).collect(Collectors.toSet());
log.debug("[op:supplierGoodsInfoBySupplier] fullItemIds: {}", fullItemIds);
while (fullItemIds.size() > 200) { while (fullItemIds.size() > 200) {
List<Long> itemIds = new ArrayList<>(fullItemIds).subList(0, 200); List<Long> itemIds = new ArrayList<>(fullItemIds).subList(0, 200);
AjaxResult<List<SpuTO>> listAjaxResult = itemRpcService.batchQuerySpuInfo(BatchQuerySpuInfoParam.builder().ids(itemIds).build()); List<String> commonProps = new ArrayList<>();
commonProps.add("sku");
commonProps.add("skuSpec");
AjaxResult<List<SpuTO>> listAjaxResult = itemRpcService
.batchQuerySpuInfo(BatchQuerySpuInfoParam.builder().ids(itemIds).commonProps(commonProps).build());
List<SpuTO> pageSpuTo = listAjaxResult.getData(); List<SpuTO> pageSpuTo = listAjaxResult.getData();
if (!CollectionUtils.isEmpty(pageSpuTo)) { if (!CollectionUtils.isEmpty(pageSpuTo)) {
spuTOList.addAll(pageSpuTo); spuTOList.addAll(pageSpuTo);
...@@ -48,18 +64,30 @@ public class SupplierItemServiceImpl implements ISupplierItemService { ...@@ -48,18 +64,30 @@ public class SupplierItemServiceImpl implements ISupplierItemService {
fullItemIds.removeAll(itemIds); fullItemIds.removeAll(itemIds);
} }
List<Long> itemIds = new ArrayList<>(fullItemIds); List<Long> itemIds = new ArrayList<>(fullItemIds);
AjaxResult<List<SpuTO>> listAjaxResult = itemRpcService.batchQuerySpuInfo(BatchQuerySpuInfoParam.builder().ids(itemIds).build()); AjaxResult<List<SpuTO>> listAjaxResult = itemRpcService
.batchQuerySpuInfo(BatchQuerySpuInfoParam.builder().ids(itemIds).build());
List<SpuTO> pageSpuTo = listAjaxResult.getData(); List<SpuTO> pageSpuTo = listAjaxResult.getData();
if (!CollectionUtils.isEmpty(pageSpuTo)) { if (!CollectionUtils.isEmpty(pageSpuTo)) {
spuTOList.addAll(pageSpuTo); spuTOList.addAll(pageSpuTo);
} }
} }
if (StringUtils.isNotBlank(itemId)) { if (StringUtils.isNotBlank(itemId)) {
spuTOList = spuTOList.stream().filter(i -> Long.valueOf(itemId).equals(i.getId())).collect(Collectors.toList()); spuTOList = spuTOList.stream().filter(i -> Long.valueOf(itemId).equals(i.getId()))
.collect(Collectors.toList());
} }
if (StringUtils.isNotBlank(itemName)) { if (StringUtils.isNotBlank(itemName)) {
spuTOList = spuTOList.stream().filter(i -> i.getName().contains(itemName)).collect(Collectors.toList()); spuTOList = spuTOList.stream().filter(i -> i.getName().contains(itemName)).collect(Collectors.toList());
} }
if (StringUtils.isNotBlank(skuId)) {
spuTOList = spuTOList.stream().filter(obj -> !CollectionUtils.isEmpty(obj.getSkuList())).filter(i -> {
List<Long> skuIds = i.getSkuList().stream().map(SkuTo::getId).collect(Collectors.toList());
if (skuIds.contains(Long.valueOf(skuId))) {
return Boolean.TRUE;
} else {
return Boolean.FALSE;
}
}).collect(Collectors.toList());
}
PageVO pageVO = buildPageVo(spuTOList.size(), page, pageSize); PageVO pageVO = buildPageVo(spuTOList.size(), page, pageSize);
Integer endIndex = page * pageSize; Integer endIndex = page * pageSize;
if (page * pageSize > spuTOList.size()) { if (page * pageSize > spuTOList.size()) {
...@@ -70,8 +98,35 @@ public class SupplierItemServiceImpl implements ISupplierItemService { ...@@ -70,8 +98,35 @@ public class SupplierItemServiceImpl implements ISupplierItemService {
SupplierItemVO supplierItemVO = new SupplierItemVO(); SupplierItemVO supplierItemVO = new SupplierItemVO();
supplierItemVO.setItemId(i.getId()); supplierItemVO.setItemId(i.getId());
supplierItemVO.setItemName(i.getName()); supplierItemVO.setItemName(i.getName());
supplierItemVO.setSpecList(i.getSpecList());
List<SupplierItemSkuVO> skuVOList = i.getSkuList().stream().map(s -> {
SupplierItemSkuVO supplierItemSkuVO = new SupplierItemSkuVO();
supplierItemSkuVO.setSkuId(s.getId());
supplierItemSkuVO.setSkuName(s.getDisplayName());
supplierItemSkuVO.setSkuSpecCombine(s.getSkuSpecCombine());
return supplierItemSkuVO;
}).collect(Collectors.toList());
supplierItemVO.setSkuInfoVOS(skuVOList);
return supplierItemVO; return supplierItemVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
supplierItemVOList.forEach(i -> {
List<SkuSpecTO> specList = i.getSpecList();
i.getSkuInfoVOS().forEach(s -> {
StringBuilder displayString = new StringBuilder();
s.getSkuSpecCombine().forEach(spec -> {
Optional<SkuSpecTO> any = specList.stream().filter(sp -> sp.getId() == spec.getSkuSpecId())
.findAny();
if (any.isPresent()) {
Optional<SkuSpecValueTO> anySpecValue = any.get().getSpecValueList().stream()
.filter(speValue -> speValue.getId() == spec.getSkuSpecValueId()).findAny();
anySpecValue.ifPresent(skuSpecValueTO -> displayString.append(skuSpecValueTO.getValue()));
}
});
s.setDisplayString(displayString.toString());
});
});
return SupplierItemPageVO.builder().pageVo(pageVO).supplierItemVOList(supplierItemVOList).build(); return SupplierItemPageVO.builder().pageVo(pageVO).supplierItemVOList(supplierItemVOList).build();
} }
......
...@@ -83,6 +83,11 @@ public class ChangeRecord { ...@@ -83,6 +83,11 @@ public class ChangeRecord {
private String changeItem; private String changeItem;
/** /**
* 变更sku
*/
private String changeSku;
/**
* 变更供应商(变更主体为供应商时有效) * 变更供应商(变更主体为供应商时有效)
*/ */
private String changeSupplier; private String changeSupplier;
...@@ -173,6 +178,11 @@ public class ChangeRecord { ...@@ -173,6 +178,11 @@ public class ChangeRecord {
private Integer autoSubmitEmail; private Integer autoSubmitEmail;
/** /**
* 变更收益金额
*/
private String changeProfitAmount;
/**
* 创建时间 * 创建时间
*/ */
private Long createTime; private Long createTime;
......
...@@ -36,4 +36,7 @@ public interface ChangeExecRecordMapper extends tk.mybatis.mapper.common.Mapper< ...@@ -36,4 +36,7 @@ public interface ChangeExecRecordMapper extends tk.mybatis.mapper.common.Mapper<
@Delete("delete from TB_YX_QC_CHANGE_EXEC_RECORD where change_record_id = #{changeRecordId}") @Delete("delete from TB_YX_QC_CHANGE_EXEC_RECORD where change_record_id = #{changeRecordId}")
Integer deleteByBaseId(@Param("changeRecordId") Long changeRecordId); Integer deleteByBaseId(@Param("changeRecordId") Long changeRecordId);
@Select("SELECT DISTINCT(change_record_id) FROM TB_YX_QC_CHANGE_EXEC_RECORD WHERE change_exec_user_email LIKE #{changeExecUser}")
List<Long> queryByUser(@Param("changeExecUser") String changeExecUser);
} }
...@@ -63,6 +63,11 @@ public class ChangeFlowCreateReq { ...@@ -63,6 +63,11 @@ public class ChangeFlowCreateReq {
private String changeItems; private String changeItems;
/** /**
* 变更sku信息
*/
private String changeSkus;
/**
* 变更供应商 * 变更供应商
*/ */
private String changeSupplier; private String changeSupplier;
...@@ -142,4 +147,9 @@ public class ChangeFlowCreateReq { ...@@ -142,4 +147,9 @@ public class ChangeFlowCreateReq {
* 同舟用户所属供应商 * 同舟用户所属供应商
*/ */
private String supplier; private String supplier;
/**
* 变更收益金额
*/
private String changeProfitAmount;
} }
\ No newline at end of file
...@@ -10,6 +10,8 @@ import com.netease.mail.yanxuan.change.common.enums.CreateSourceEnum; ...@@ -10,6 +10,8 @@ import com.netease.mail.yanxuan.change.common.enums.CreateSourceEnum;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @Author zcwang * @Author zcwang
* @Date 2022/11/21 * @Date 2022/11/21
...@@ -21,6 +23,8 @@ public class ChangeFlowListQueryReq { ...@@ -21,6 +23,8 @@ public class ChangeFlowListQueryReq {
*/ */
private String itemId; private String itemId;
private String skuId;
/** /**
* 变更供应商(变更主体为供应商时有效) * 变更供应商(变更主体为供应商时有效)
*/ */
...@@ -78,6 +82,16 @@ public class ChangeFlowListQueryReq { ...@@ -78,6 +82,16 @@ public class ChangeFlowListQueryReq {
private String createSupplier; private String createSupplier;
/** /**
* 变更执行人
*/
private String changeExecUser;
/**
* 变更记录id集合
*/
private List<Long> changeRecordIds;
/**
* 工单id * 工单id
*/ */
private Long flowId; private Long flowId;
......
...@@ -45,6 +45,12 @@ public class ChangeFlowSubmitReq { ...@@ -45,6 +45,12 @@ public class ChangeFlowSubmitReq {
* 变更商品 * 变更商品
*/ */
private String changeItems; private String changeItems;
/**
* 变更sku信息
*/
private String changeSkus;
/** /**
* 变更供应商 * 变更供应商
*/ */
...@@ -109,4 +115,9 @@ public class ChangeFlowSubmitReq { ...@@ -109,4 +115,9 @@ public class ChangeFlowSubmitReq {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 变更收益金额
*/
private String changeProfitAmount;
} }
\ No newline at end of file
...@@ -106,6 +106,11 @@ public class ChangeFlowVO { ...@@ -106,6 +106,11 @@ public class ChangeFlowVO {
* 变更收益说明 * 变更收益说明
*/ */
private String changeProfitDesc; private String changeProfitDesc;
/**
* 变更收益金额
*/
private String changeProfitAmount;
/** /**
* 变更商品列表 * 变更商品列表
*/ */
......
...@@ -58,4 +58,8 @@ public class ItemBasicInfoVO { ...@@ -58,4 +58,8 @@ public class ItemBasicInfoVO {
*/ */
private ChangeGoodsPrincipalPO changeGoodsPrincipal; private ChangeGoodsPrincipalPO changeGoodsPrincipal;
/**
* 商品sku
*/
private List<String> skuIds;
} }
\ No newline at end of file
package com.netease.mail.yanxuan.change.dal.meta.model.vo;
import lombok.Data;
import java.util.List;
@Data
public class ItemSkuVO {
private Long itemId;
private List<String> skuId;
}
...@@ -8,6 +8,8 @@ package com.netease.mail.yanxuan.change.dal.meta.model.vo; ...@@ -8,6 +8,8 @@ package com.netease.mail.yanxuan.change.dal.meta.model.vo;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @Author zcwang * @Author zcwang
* @Date 2022/11/21 * @Date 2022/11/21
...@@ -24,4 +26,9 @@ public class ItemVO { ...@@ -24,4 +26,9 @@ public class ItemVO {
* 商品名 * 商品名
*/ */
private String itemName; private String itemName;
/**
* 商品sku
*/
private List<String> skuIds;
} }
\ No newline at end of file
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
<result column="change_department" jdbcType="VARCHAR" property="changeDepartment" /> <result column="change_department" jdbcType="VARCHAR" property="changeDepartment" />
<result column="participate_change_exec_department" jdbcType="VARCHAR" property="participateChangeExecDepartment" /> <result column="participate_change_exec_department" jdbcType="VARCHAR" property="participateChangeExecDepartment" />
<result column="change_item" jdbcType="VARCHAR" property="changeItem" /> <result column="change_item" jdbcType="VARCHAR" property="changeItem" />
<result column="change_sku" jdbcType="VARCHAR" property="changeSku" />
<result column="change_supplier" jdbcType="VARCHAR" property="changeSupplier" /> <result column="change_supplier" jdbcType="VARCHAR" property="changeSupplier" />
<result column="change_reason" jdbcType="VARCHAR" property="changeReason" /> <result column="change_reason" jdbcType="VARCHAR" property="changeReason" />
<result column="change_content" jdbcType="VARCHAR" property="changeContent" /> <result column="change_content" jdbcType="VARCHAR" property="changeContent" />
...@@ -27,6 +28,7 @@ ...@@ -27,6 +28,7 @@
<result column="create_source" jdbcType="INTEGER" property="createSource" /> <result column="create_source" jdbcType="INTEGER" property="createSource" />
<result column="create_supplier" jdbcType="VARCHAR" property="createSupplier" /> <result column="create_supplier" jdbcType="VARCHAR" property="createSupplier" />
<result column="change_result_desc" jdbcType="VARCHAR" property="changeResultDesc" /> <result column="change_result_desc" jdbcType="VARCHAR" property="changeResultDesc" />
<result column="change_profit_amount" jdbcType="VARCHAR" property="changeProfitAmount" />
<result column="remark" jdbcType="VARCHAR" property="remark" /> <result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="creator" jdbcType="VARCHAR" property="creator" /> <result column="creator" jdbcType="VARCHAR" property="creator" />
<result column="create_time" jdbcType="BIGINT" property="createTime" /> <result column="create_time" jdbcType="BIGINT" property="createTime" />
...@@ -35,9 +37,9 @@ ...@@ -35,9 +37,9 @@
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id, flow_id, flow_node, change_subject, parent_change_class_id, son_change_class_id, id, flow_id, flow_node, change_subject, parent_change_class_id, son_change_class_id,
change_level, change_commander, change_department, participate_change_exec_department, change_level, change_commander, change_department, participate_change_exec_department,
change_item, change_supplier, change_reason, change_content, change_risk_desc, change_checking, change_item, change_sku, change_supplier, change_reason, change_content, change_risk_desc, change_checking,
change_profit, change_profit_desc, change_confirm_result_time, `state`, cancel_reason, change_profit, change_profit_desc, change_confirm_result_time, `state`, cancel_reason,
change_result, create_source, create_supplier, change_result_desc, remark, creator, change_result, create_source, create_supplier, change_result_desc, remark, creator, change_profit_amount,
create_time, update_time create_time, update_time
</sql> </sql>
...@@ -51,6 +53,9 @@ ...@@ -51,6 +53,9 @@
<if test="itemId != null "> <if test="itemId != null ">
and change_item like concat('%',#{itemId},'%') and change_item like concat('%',#{itemId},'%')
</if> </if>
<if test="skuId != null ">
and change_sku like concat('%',#{skuId},'%')
</if>
<if test="supplier != null "> <if test="supplier != null ">
and change_supplier = #{supplier} and change_supplier = #{supplier}
</if> </if>
...@@ -84,6 +89,12 @@ ...@@ -84,6 +89,12 @@
<if test="flowId != null"> <if test="flowId != null">
and flow_id = #{flowId} and flow_id = #{flowId}
</if> </if>
<if test="changeRecordIds != null and changeRecordIds.size() > 0">
and id in
<foreach collection="changeRecordIds" close=")" open="(" item="item" separator=",">
${item}
</foreach>
</if>
</where> </where>
order by create_time desc order by create_time desc
</select> </select>
...@@ -98,6 +109,9 @@ ...@@ -98,6 +109,9 @@
<if test="itemId != null "> <if test="itemId != null ">
and change_item like concat('%',#{itemId},'%') and change_item like concat('%',#{itemId},'%')
</if> </if>
<if test="skuId != null ">
and change_sku like concat('%',#{skuId},'%')
</if>
<if test="supplier != null "> <if test="supplier != null ">
and change_supplier = #{supplier} and change_supplier = #{supplier}
</if> </if>
......
...@@ -17,7 +17,7 @@ public class SupplierUserRsp { ...@@ -17,7 +17,7 @@ public class SupplierUserRsp {
private String supplierId; private String supplierId;
/** /**
* 角色ID(1-采购 2-计划 3-SQE 4-商品开发) 以及名称 * key:邮箱 value:姓名
*/ */
private Map<String,String> uid2NameMap; private Map<String,String> uid2NameMap;
......
package com.netease.mail.yanxuan.change.integration.todo;
import com.netease.mail.yanxuan.change.integration.item.meta.SkuSpecCombineTO;
import lombok.Data;
import java.util.List;
@Data
public class SupplierItemSkuVO {
private Long skuId;
private String skuName;
/**
* 规格描述
*/
private String displayString;
//SKU规格构成对象
private List<SkuSpecCombineTO> skuSpecCombine;
}
package com.netease.mail.yanxuan.change.integration.todo; package com.netease.mail.yanxuan.change.integration.todo;
import com.netease.mail.yanxuan.change.integration.item.meta.SkuSpecTO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.util.List;
@Data @Data
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor
...@@ -20,4 +23,12 @@ public class SupplierItemVO { ...@@ -20,4 +23,12 @@ public class SupplierItemVO {
* 商品名称 * 商品名称
*/ */
private String itemName; private String itemName;
/**
* 商品sku
*/
private List<SupplierItemSkuVO> skuInfoVOS;
//SPU关联的规格信息列表
private List<SkuSpecTO> specList;
} }
...@@ -8,6 +8,7 @@ package com.netease.mail.yanxuan.change.web.controller; ...@@ -8,6 +8,7 @@ package com.netease.mail.yanxuan.change.web.controller;
import javax.validation.Valid; import javax.validation.Valid;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.logging.log4j.util.Strings; import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert; import org.springframework.util.Assert;
...@@ -42,6 +43,8 @@ import com.netease.yanxuan.flowx.sdk.meta.dto.exec.UserBaseContainerDTO; ...@@ -42,6 +43,8 @@ import com.netease.yanxuan.flowx.sdk.meta.dto.exec.UserBaseContainerDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.List;
/** /**
* @Author zcwang * @Author zcwang
* @Date 2022/11/14 * @Date 2022/11/14
...@@ -83,6 +86,7 @@ public class ChangeFlowController { ...@@ -83,6 +86,7 @@ public class ChangeFlowController {
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
@RequestParam(name = "createSource") Integer createSource, @RequestParam(name = "createSource") Integer createSource,
@RequestParam(name = "itemId", required = false) String itemId, @RequestParam(name = "itemId", required = false) String itemId,
@RequestParam(name = "skuId", required = false) String skuId,
@RequestParam(name = "supplier", required = false) String supplier, @RequestParam(name = "supplier", required = false) String supplier,
@RequestParam(name = "parentChangeClassId", required = false) Long parentChangeClassId, @RequestParam(name = "parentChangeClassId", required = false) Long parentChangeClassId,
@RequestParam(name = "sonChangeClassId", required = false) Long sonChangeClassId, @RequestParam(name = "sonChangeClassId", required = false) Long sonChangeClassId,
...@@ -90,11 +94,14 @@ public class ChangeFlowController { ...@@ -90,11 +94,14 @@ public class ChangeFlowController {
@RequestParam(name = "changeCommander", required = false) String changeCommander, @RequestParam(name = "changeCommander", required = false) String changeCommander,
@RequestParam(name = "changeDepartment", required = false) String changeDepartment, @RequestParam(name = "changeDepartment", required = false) String changeDepartment,
@RequestParam(name = "changeExecDepartment", required = false) String changeExecDepartment, @RequestParam(name = "changeExecDepartment", required = false) String changeExecDepartment,
@RequestParam(name = "changeExecUser", required = false) String changeExecUser,
@RequestParam(name = "startTime", required = false) Long startTime, @RequestParam(name = "startTime", required = false) Long startTime,
@RequestParam(name = "endTime", required = false) Long endTime, @RequestParam(name = "endTime", required = false) Long endTime,
@RequestParam(name = "flowId", required = false) Long flowId) { @RequestParam(name = "flowId", required = false) Long flowId) {
ChangeFlowListQueryReq changeFlowListQueryReq = new ChangeFlowListQueryReq(); ChangeFlowListQueryReq changeFlowListQueryReq = new ChangeFlowListQueryReq();
changeFlowListQueryReq.setChangeExecUser(changeExecUser);
changeFlowListQueryReq.setItemId(itemId); changeFlowListQueryReq.setItemId(itemId);
changeFlowListQueryReq.setSkuId(skuId);
changeFlowListQueryReq.setSupplier(supplier); changeFlowListQueryReq.setSupplier(supplier);
changeFlowListQueryReq.setParentChangeClassId(parentChangeClassId); changeFlowListQueryReq.setParentChangeClassId(parentChangeClassId);
changeFlowListQueryReq.setSonChangeClassId(sonChangeClassId); changeFlowListQueryReq.setSonChangeClassId(sonChangeClassId);
...@@ -249,6 +256,20 @@ public class ChangeFlowController { ...@@ -249,6 +256,20 @@ public class ChangeFlowController {
*/ */
@PostMapping("/queryCommanderInfo") @PostMapping("/queryCommanderInfo")
public AjaxResult<CommanderResponse> queryCommanderInfo(@RequestBody QueryCommanderEmailReq req) { public AjaxResult<CommanderResponse> queryCommanderInfo(@RequestBody QueryCommanderEmailReq req) {
List<CommanderResponse> commanderResponseList = interiorChangeConfigService.queryCommanderEmail(req);
if (CollectionUtils.isEmpty(commanderResponseList)) {
return AjaxResult.success();
}
return AjaxResult.success(commanderResponseList.get(0));
}
/**
* 查询负责人信息
* @param req
* @return
*/
@PostMapping("/queryCommanderInfoV2")
public AjaxResult<List<CommanderResponse>> queryCommanderInfoV2(@RequestBody QueryCommanderEmailReq req) {
return AjaxResult.success(interiorChangeConfigService.queryCommanderEmail(req)); return AjaxResult.success(interiorChangeConfigService.queryCommanderEmail(req));
} }
} }
package com.netease.mail.yanxuan.change.web.controller; package com.netease.mail.yanxuan.change.web.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.netease.mail.yanxuan.change.biz.config.AppConfig; import com.netease.mail.yanxuan.change.biz.config.AppConfig;
import com.netease.mail.yanxuan.change.biz.service.ISupplierItemService; import com.netease.mail.yanxuan.change.biz.service.ISupplierItemService;
...@@ -9,19 +17,11 @@ import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplier ...@@ -9,19 +17,11 @@ import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplier
import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplierService; import com.netease.mail.yanxuan.change.integration.flow.supplier.FlowRpcSupplierService;
import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierGoodsInfoReq; import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierGoodsInfoReq;
import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierSearchRemoteReq; import com.netease.mail.yanxuan.change.integration.flow.supplier.req.SupplierSearchRemoteReq;
import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierInfoRsp;
import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierSimpleRsp; import com.netease.mail.yanxuan.change.integration.flow.supplier.rsp.SupplierSimpleRsp;
import com.netease.mail.yanxuan.change.integration.todo.SupplierItemPageVO; import com.netease.mail.yanxuan.change.integration.todo.SupplierItemPageVO;
import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse; import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections; import lombok.extern.slf4j.Slf4j;
import java.util.List;
/** /**
* @author WangJiaXiang * @author WangJiaXiang
...@@ -62,13 +62,13 @@ public class SupplierController { ...@@ -62,13 +62,13 @@ public class SupplierController {
@GetMapping("/query/supplier/item") @GetMapping("/query/supplier/item")
public AjaxResponse<SupplierItemPageVO> querySupplier(@RequestParam String supplier, public AjaxResponse<SupplierItemPageVO> querySupplier(@RequestParam String supplier,
@RequestParam(required = false) String itemId, @RequestParam(required = false) String itemId, @RequestParam(required = false) String itemName,
@RequestParam(required = false) String itemName, @RequestParam(required = false) String skuId, @RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "10") Integer pageSize) { @RequestParam(defaultValue = "10") Integer pageSize) {
SupplierGoodsInfoReq supplierGoodsInfoReq = new SupplierGoodsInfoReq(); SupplierGoodsInfoReq supplierGoodsInfoReq = new SupplierGoodsInfoReq();
supplierGoodsInfoReq.setSupplierIds(supplier); supplierGoodsInfoReq.setSupplierIds(supplier);
return AjaxResponse.initSuccessResult(supplierItemService.supplierGoodsInfoBySupplier(supplierGoodsInfoReq, itemId, itemName, page, pageSize)); return AjaxResponse.initSuccessResult(supplierItemService.supplierGoodsInfoBySupplier(supplierGoodsInfoReq,
itemId, itemName, page, pageSize, skuId));
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment