新增通过销售订单明细id查询订单详情

This commit is contained in:
潘荣晟
2026-01-16 15:24:07 +08:00
parent d77f4b1411
commit 27a61f78a3
7 changed files with 72 additions and 36 deletions

View File

@@ -2,6 +2,7 @@ package com.zt.plat.module.contractorder.api;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.module.contractorder.api.dto.order.OrderDTO;
import com.zt.plat.module.contractorder.api.dto.order.SalesOrdDtlDTO;
import com.zt.plat.module.contractorder.api.dto.order.UpdateOrderLstQtyDTO;
import com.zt.plat.module.contractorder.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
@@ -9,8 +10,10 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@@ -34,4 +37,11 @@ public interface OrderApi {
@Operation(summary = "根据订单明细id更新累积量(冲销)", description = "根据订单明细id更新收货量(冲销)")
CommonResult<Boolean> voidOrderLstQty(@RequestBody @Validated List<UpdateOrderLstQtyDTO> updateOrderLstQtyDTOS);
@PostMapping(PREFIX + "/get-salas-order-details-by-ids")
@Operation(summary = "通过销售订单明细id获取销售订单详情", description = "通过销售订单明细id获取销售订单详情")
CommonResult<List<SalesOrdDtlDTO>> getSalesOrderDetailsByOrderIds(@RequestBody List<Long> ids);
@GetMapping(PREFIX + "/get-salas-order-details-by-id")
@Operation(summary = "通过销售订单明细id获取销售订单详情", description = "通过销售订单明细id获取销售订单详情")
CommonResult<SalesOrdDtlDTO> getSalesOrderDetailsByOrderId(@RequestParam("id") Long id);
}

View File

@@ -1,138 +1,150 @@
package com.zt.plat.module.contractorder.api.dto.order;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
@Data
@Schema(description = "销售订单明细DTO")
public class SalesOrdDtlDTO {
/**
* 主键
*/
@Schema(description = "主键")
private Long id;
/**
* 订单主键
*/
@Schema(description = "订单主键")
private Long orderId;
/**
* 行项目;推送ERP(必须)
*/
@Schema(description = "行项目;推送ERP(必须)")
private Long lineNumber;
/**
* 物料名称
*/
@Schema(description = "物料名称")
private String materialName;
/**
* 物料编码;推送ERP(必须)
*/
@Schema(description = "物料编码;推送ERP(必须)")
private String materialNumber;
/**
* 工厂名称
*/
@Schema(description = "工厂名称")
private String factoryName;
/**
* 工厂编码;推送ERP(必须)
*/
@Schema(description = "工厂编码;推送ERP(必须)")
private String factoryNumber;
/**
* 库位名称
*/
@Schema(description = "库位名称")
private String warehouseName;
/**
* 库位编码;推送ERP(必须)
*/
@Schema(description = "库位编码;推送ERP(必须)")
private String warehouseNumber;
/**
* 计量单位;推送ERP(必须)
*/
@Schema(description = "计量单位;推送ERP(必须)")
private String unit;
/**
* 开票类型;推送ERP(必须)
*/
@Schema(description = "开票类型;推送ERP(必须)")
private String invoiceType;
/**
* 暂估数量;推送ERP(必须)
*/
@Schema(description = "暂估数量;推送ERP(必须)")
private BigDecimal quantity;
/**
* 稅分类(字典:SALE_TAX);推送ERP(必须)
*/
@Schema(description = "税率分类(字典:SALE_TAX);推送ERP(必须)")
private String taxAcctasscat;
/**
* 项目类别;推送ERP
*/
@Schema(description = "项目类别;推送ERP")
private String projectCategory;
/**
* 装运地点;推送ERP
*/
@Schema(description = "装运地点;推送ERP")
private String shippingPlace;
/**
* 物料科目分配组;推送ERP必须
*/
@Schema(description = "物料科目分配组;推送ERP必须")
private String metalAcctasscatGroup;
/**
* 小协议号
*/
@Schema(description = "小协议号")
private String agreementNumber;
/**
* 总价
*/
@Schema(description = "总价")
private BigDecimal gross;
/**
* 金属元素缩写
*/
@Schema(description = "金属元素缩写")
private String elementAbbreviation;
/**
* 金属元素名称
*/
@Schema(description = "金属元素名称")
private String elementName;
/**
* 金属元素编码
*/
@Schema(description = "金属元素编码")
private String elementNumber;
/**
* 是否启用;处理明细中多个相同物料,只能允许一种物料启用
*/
@Schema(description = "是否启用;处理明细中多个相同物料,只能允许一种物料启用")
private String isEnable;
/**
* 价格条件详情;推送ERP(必须):JSON
*/
@Schema(description = "价格条件详情;推送ERP(必须):JSON")
private String priceConditionDetail;
/**
* 来料加工原料详情;推送ERP:订单类型(JSON)
*/
@Schema(description = "来料加工原料详情;推送ERP:订单类型(JSON)")
private String originDetail;
/**
* 税率
*/
@Schema(description = "税率")
private BigDecimal taxRte;
/**
* 已移库量库;存针对该订单产生的移库量
*/
@Schema(description = "已移库量库;存针对该订单产生的移库量")
private BigDecimal trfQty;
}

View File

@@ -171,6 +171,18 @@ public class OrderApiImpl implements OrderApi {
return success(true);
}
@Override
public CommonResult<List<SalesOrdDtlDTO>> getSalesOrderDetailsByOrderIds(List<Long> ids) {
List<SalesOrderDetailDO> salesOrderDetailDOS = SpringUtil.getBean(SalesOrderDetailMapper.class).selectList(SalesOrderDetailDO::getId, ids);
return success(BeanUtils.toBean(salesOrderDetailDOS, SalesOrdDtlDTO.class));
}
@Override
public CommonResult<SalesOrdDtlDTO> getSalesOrderDetailsByOrderId(Long id) {
SalesOrderDetailDO salesOrderDetailDOS = SpringUtil.getBean(SalesOrderDetailMapper.class).selectOne(SalesOrderDetailDO::getOrderId, id);
return success(BeanUtils.toBean(salesOrderDetailDOS, SalesOrdDtlDTO.class));
}
private List<SalesOrderDO> getOrderByIds(List<Long> ids) {
return SpringUtil.getBean(SalesOrderMapper.class).selectByIds(ids); // 采购订单与销售订单的
}