Browse Source

[fix]

售后管理 售后客诉通知
修改客诉通知单详情实体类,调整表格导出绑定字段和顺序;
修改出库单详情mapper,新增按生产单号查询详情列表方法;
修改客诉通知service接口,新增查找出库单中已出库数并赋值给相应物料的方法;
修改添加客诉通知单页面,增加已出库数字段;
修改售后物料VO类,字段已出库数量类型改为Integer;
dev
王晓迪 6 months ago
parent
commit
a160febec5
  1. 6
      ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesComplaintNoticeDetail.java
  2. 2
      ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/vo/AftersalesMaterialVO.java
  3. 19
      ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesComplaintNoticeServiceImpl.java
  4. 5
      ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderDetailMapper.java
  5. 4
      ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml
  6. 5
      ruoyi-admin/src/main/resources/templates/aftersales/complaintNotice/add.html

6
ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/AftersalesComplaintNoticeDetail.java

@ -33,7 +33,7 @@ public class AftersalesComplaintNoticeDetail extends BaseEntity
private Long userId;
/** 交货数量 */
@Excel(name = "交货数量",sort = 8)
// @Excel(name = "交货数量",sort = 8)
private String deliveryGoodsNum;
/** 紧急程度 */
@ -45,7 +45,7 @@ public class AftersalesComplaintNoticeDetail extends BaseEntity
private String complaintProblem;
/** 是否结案 */
@Excel(name = "是否结案",sort = 13)
@Excel(name = "是否结案",sort = 13,dictType = "aftersales_closing_procedures")
private String closingProcedures;
/** 不良报告问题 */
@ -112,7 +112,7 @@ public class AftersalesComplaintNoticeDetail extends BaseEntity
private String enterpriseSum;
/** 备注 */
@Excel(name = "设备编号", sort = 14)
@Excel(name = "备注", sort = 14)
private String remark;
/** 客诉通知相关物料数据 */

2
ruoyi-admin/src/main/java/com/ruoyi/aftersales/domain/vo/AftersalesMaterialVO.java

@ -58,5 +58,5 @@ public class AftersalesMaterialVO extends BaseEntity {
/** 已出库数量 */
@Excel(name = "已出库数量")
private String shippedGoodsSum;
private Integer shippedGoodsSum;
}

19
ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesComplaintNoticeServiceImpl.java

@ -7,6 +7,7 @@ import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Optional;
import com.ruoyi.aftersales.domain.AftersalesComplaintNoticeDetail;
import com.ruoyi.aftersales.domain.vo.AftersalesMaterialVO;
@ -17,6 +18,8 @@ import com.ruoyi.system.domain.SysMakeOrder;
import com.ruoyi.system.domain.SysMakeorderBom;
import com.ruoyi.system.mapper.SysMakeOrderMapper;
import com.ruoyi.system.mapper.SysMakeorderBomMapper;
import com.ruoyi.warehouse.domain.WarehouseOutOrderDetail;
import com.ruoyi.warehouse.mapper.WarehouseOutOrderDetailMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -45,6 +48,9 @@ public class AftersalesComplaintNoticeServiceImpl implements IAftersalesComplain
@Autowired
private SysMakeorderBomMapper sysMakeorderBomMapper;
@Autowired
private WarehouseOutOrderDetailMapper warehouseOutOrderDetailMapper;
/**
* 查询售后客诉通知单
*
@ -190,9 +196,22 @@ public class AftersalesComplaintNoticeServiceImpl implements IAftersalesComplain
// 记录日志
log.warn("未查找到与生产订单关联的物料相关数据, 生产订单号: {}", makeNo);
}
List<WarehouseOutOrderDetail> outOrderDetails = warehouseOutOrderDetailMapper.selectOutOrderDetailListByMakeNo(makeNo);
for (SysMakeorderBom sysMakeorderBom : sysMakeorderBoms) {
AftersalesMaterialVO aftersalesMaterialVO = new AftersalesMaterialVO();
aftersalesMaterialVO.setMaterialNo(sysMakeorderBom.getMaterialNo());
if (StringUtils.isEmpty(outOrderDetails)){
aftersalesMaterialVO.setShippedGoodsSum(0);
}else {
Optional<WarehouseOutOrderDetail> matchingDetail = outOrderDetails.stream()
.filter(detail -> detail.getMaterialNo().equals(sysMakeorderBom.getMaterialNo()))
.findFirst();
matchingDetail.ifPresent(detail -> {
int sum = detail.getHasOutOrderSum();
aftersalesMaterialVO.setShippedGoodsSum(detail.getHasOutOrderSum()==null?0:detail.getHasOutOrderSum());
});
}
aftersalesMaterialVO.setMaterialBrand(sysMakeorderBom.getBrand());
aftersalesMaterialVO.setMaterialDescribe(sysMakeorderBom.getDescribe());
aftersalesMaterialVO.setMaterialName(sysMakeorderBom.getMaterialName());

5
ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderDetailMapper.java

@ -83,7 +83,10 @@ public interface WarehouseOutOrderDetailMapper
*/
List<WarehouseOutOrderDetail> selectOutOrderDetailListByCode(String outOrderCode);
/**
* 根据生产单号查询出库单详情数据
*/
List<WarehouseOutOrderDetail> selectOutOrderDetailListByMakeNo(String makeNo);
/**
* 根据物料号出库单号关联单号查询出库单详情数据
*/

4
ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseOutOrderDetailMapper.xml

@ -77,6 +77,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where out_order_code = #{outOrderCode}
</select>
<select id="selectOutOrderDetailListByMakeNo" parameterType="String" resultMap="WarehouseOutOrderDetailResult">
<include refid="selectWarehouseOutOrderDetailVo"/>
where make_no = #{makeNo}
</select>
<select id="selectOutOrderDetailListByThreeCode" parameterType="WarehouseOutOrderDetail" resultMap="WarehouseOutOrderDetailResult">
<include refid="selectWarehouseOutOrderDetailVo"/>

5
ruoyi-admin/src/main/resources/templates/aftersales/complaintNotice/add.html

@ -141,6 +141,7 @@
"materialUnit": item.materialUnit,
"materialBrand": item.materialBrand,
"materialDescribe": item.materialDescribe,
"shippedGoodsSum": item.shippedGoodsSum,
"snCode": item.snCode,
"complaintProblem": item.complaintProblem,
// "emergencyDegree": item.emergencyDegree,
@ -321,6 +322,10 @@
title: '描述',
field: 'materialDescribe',
},
{
title: '已出库数',
field: 'shippedGoodsSum',
},
{
title: 'SN号',
field: 'snCode',

Loading…
Cancel
Save