feat(crm): 添加销售异议管理中的钢卷信息关联功能
- 在 CrmSalesObjection 实体中新增 coilIds 字段用于存储钢卷ID集合 - 在查询接口中集成钢卷信息服务,实现销售异议与钢卷信息的关联查询 - 修改数据库映射文件,添加 coilIds 字段的映射关系 - 扩展查询条件构建逻辑,支持按钢卷ID进行筛选 - 新增 coilList 字段用于返回关联的钢卷信息列表 - 更新 application-prod.yml 中间件配置,修改 sql-server-api 主机地址为 140.143.206.120
This commit is contained in:
@@ -9,7 +9,7 @@ klp:
|
||||
|
||||
--- # sql-server-api 中间件配置(生产环境)
|
||||
sql-server-api:
|
||||
host: 192.168.0.219
|
||||
host: 140.143.206.120
|
||||
port: 15000
|
||||
base-url: http://${sql-server-api.host}:${sql-server-api.port}
|
||||
|
||||
|
||||
@@ -81,6 +81,11 @@ public class CrmSalesObjection extends BaseEntity {
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date returnDate;
|
||||
|
||||
/**
|
||||
* 钢卷ID集合(多个用逗号分隔)
|
||||
*/
|
||||
private String coilIds;
|
||||
|
||||
/**
|
||||
* 投诉情况
|
||||
*/
|
||||
|
||||
@@ -100,4 +100,9 @@ public class CrmSalesObjectionBo extends BaseEntity {
|
||||
*/
|
||||
private String customerDemand;
|
||||
|
||||
/**
|
||||
* 钢卷ID集合(多个用逗号分隔)
|
||||
*/
|
||||
private String coilIds;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.klp.crm.domain.vo;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
@@ -122,4 +123,14 @@ public class CrmSalesObjectionVo {
|
||||
@ExcelProperty(value = "客户诉求")
|
||||
private String customerDemand;
|
||||
|
||||
/**
|
||||
* 钢卷ID集合(多个用逗号分隔)
|
||||
*/
|
||||
private String coilIds;
|
||||
|
||||
/**
|
||||
* 钢卷信息列表
|
||||
*/
|
||||
private List<com.klp.domain.vo.WmsMaterialCoilVo> coilList;
|
||||
|
||||
}
|
||||
|
||||
@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.klp.common.utils.StringUtils;
|
||||
import com.klp.domain.bo.WmsMaterialCoilBo;
|
||||
import com.klp.domain.vo.WmsMaterialCoilVo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.klp.crm.domain.bo.CrmSalesObjectionBo;
|
||||
@@ -14,10 +16,12 @@ import com.klp.crm.domain.vo.CrmSalesObjectionVo;
|
||||
import com.klp.crm.domain.CrmSalesObjection;
|
||||
import com.klp.crm.mapper.CrmSalesObjectionMapper;
|
||||
import com.klp.crm.service.ICrmSalesObjectionService;
|
||||
import com.klp.service.IWmsMaterialCoilService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* 销售异议管理Service业务层处理
|
||||
@@ -30,13 +34,21 @@ import java.util.Collection;
|
||||
public class CrmSalesObjectionServiceImpl implements ICrmSalesObjectionService {
|
||||
|
||||
private final CrmSalesObjectionMapper baseMapper;
|
||||
private final IWmsMaterialCoilService wmsMaterialCoilService;
|
||||
|
||||
/**
|
||||
* 查询销售异议管理
|
||||
*/
|
||||
@Override
|
||||
public CrmSalesObjectionVo queryById(String objectionId){
|
||||
return baseMapper.selectVoById(objectionId);
|
||||
CrmSalesObjectionVo vo = baseMapper.selectVoById(objectionId);
|
||||
if (vo != null && StringUtils.isNotBlank(vo.getCoilIds())) {
|
||||
com.klp.domain.bo.WmsMaterialCoilBo coilBo = new com.klp.domain.bo.WmsMaterialCoilBo();
|
||||
coilBo.setCoilIds(vo.getCoilIds());
|
||||
List<com.klp.domain.vo.WmsMaterialCoilVo> coilList = wmsMaterialCoilService.queryList(coilBo);
|
||||
vo.setCoilList(coilList);
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -46,6 +58,17 @@ public class CrmSalesObjectionServiceImpl implements ICrmSalesObjectionService {
|
||||
public TableDataInfo<CrmSalesObjectionVo> queryPageList(CrmSalesObjectionBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<CrmSalesObjection> lqw = buildQueryWrapper(bo);
|
||||
Page<CrmSalesObjectionVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
|
||||
// 查询钢卷信息并填充到VO中
|
||||
for (CrmSalesObjectionVo vo : result.getRecords()) {
|
||||
if (StringUtils.isNotBlank(vo.getCoilIds())) {
|
||||
WmsMaterialCoilBo coilBo = new WmsMaterialCoilBo();
|
||||
coilBo.setCoilIds(vo.getCoilIds());
|
||||
List<WmsMaterialCoilVo> coilList = wmsMaterialCoilService.queryList(coilBo);
|
||||
vo.setCoilList(coilList);
|
||||
}
|
||||
}
|
||||
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
@@ -55,7 +78,19 @@ public class CrmSalesObjectionServiceImpl implements ICrmSalesObjectionService {
|
||||
@Override
|
||||
public List<CrmSalesObjectionVo> queryList(CrmSalesObjectionBo bo) {
|
||||
LambdaQueryWrapper<CrmSalesObjection> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
List<CrmSalesObjectionVo> resultList = baseMapper.selectVoList(lqw);
|
||||
|
||||
// 查询钢卷信息并填充到VO中
|
||||
for (CrmSalesObjectionVo vo : resultList) {
|
||||
if (StringUtils.isNotBlank(vo.getCoilIds())) {
|
||||
com.klp.domain.bo.WmsMaterialCoilBo coilBo = new com.klp.domain.bo.WmsMaterialCoilBo();
|
||||
coilBo.setCoilIds(vo.getCoilIds());
|
||||
List<com.klp.domain.vo.WmsMaterialCoilVo> coilList = wmsMaterialCoilService.queryList(coilBo);
|
||||
vo.setCoilList(coilList);
|
||||
}
|
||||
}
|
||||
|
||||
return resultList;
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<CrmSalesObjection> buildQueryWrapper(CrmSalesObjectionBo bo) {
|
||||
@@ -75,6 +110,7 @@ public class CrmSalesObjectionServiceImpl implements ICrmSalesObjectionService {
|
||||
lqw.eq(bo.getReturnDate() != null, CrmSalesObjection::getReturnDate, bo.getReturnDate());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getComplaintContent()), CrmSalesObjection::getComplaintContent, bo.getComplaintContent());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getCustomerDemand()), CrmSalesObjection::getCustomerDemand, bo.getCustomerDemand());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getCoilIds()), CrmSalesObjection::getCoilIds, bo.getCoilIds());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="productCategory" column="product_category"/>
|
||||
<result property="returnDate" column="return_date"/>
|
||||
<result property="coilIds" column="coilIds"/>
|
||||
<result property="complaintContent" column="complaint_content"/>
|
||||
<result property="customerDemand" column="customer_demand"/>
|
||||
<result property="createBy" column="create_by"/>
|
||||
|
||||
Reference in New Issue
Block a user