1、修改bug

This commit is contained in:
潘荣晟
2025-10-28 15:18:12 +08:00
parent 39d9023874
commit 6ba001a74a
10 changed files with 324 additions and 35 deletions

View File

@@ -260,7 +260,7 @@ public class TemplateInstanceServiceImpl implements TemplateInstanceService {
code = TmplStsEnum.STOPPED.getCode(); code = TmplStsEnum.STOPPED.getCode();
} else if (reqVO.getType().equals("enable")) { } else if (reqVO.getType().equals("enable")) {
// 启用 // 启用
code = TmplStsEnum.START.getCode(); code = TmplStsEnum.DRAFT.getCode();
} }
if (code.isEmpty()) { if (code.isEmpty()) {
throw exception(ILLEGAL_OPERATION_TYPE); throw exception(ILLEGAL_OPERATION_TYPE);

View File

@@ -2,7 +2,7 @@ package com.zt.plat.module.contractorder.api;
import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.module.contractorder.api.dto.PurchaseOrderWithDetailsDTO; import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO;
import com.zt.plat.module.contractorder.api.dto.contract.ContractRespDTO; import com.zt.plat.module.contractorder.api.dto.contract.ContractRespDTO;
import com.zt.plat.module.contractorder.api.vo.contract.ContractSaveReqVO; import com.zt.plat.module.contractorder.api.vo.contract.ContractSaveReqVO;
import com.zt.plat.module.contractorder.api.vo.contract.international.ContractRequest; import com.zt.plat.module.contractorder.api.vo.contract.international.ContractRequest;
@@ -11,7 +11,6 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import org.springframework.cloud.openfeign.FeignClient; 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.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;

View File

@@ -1,4 +1,4 @@
package com.zt.plat.module.contractorder.api.dto; package com.zt.plat.module.contractorder.api.dto.order;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.zt.plat.module.contractorder.api.dto; package com.zt.plat.module.contractorder.api.dto.order;
import lombok.Data; import lombok.Data;
@@ -189,5 +189,12 @@ public class PurchaseOrderWithDetailsDTO {
* 订单类型 * 订单类型
*/ */
private String splyBsnTp; private String splyBsnTp;
private List<PrchOrdDtlDTO> orderDetails; /**
* 采购订单明细
*/
private List<PrchOrdDtlDTO> prchOrdDtlDTOS;
/**
* 消费订单明细
*/
private List<SalesOrdDtlDTO> salesOrdDtlDTOS;
} }

View File

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

View File

@@ -1,11 +1,13 @@
package com.zt.plat.module.contractorder.api; package com.zt.plat.module.contractorder.api;
import cn.hutool.extra.spring.SpringUtil;
import cn.hutool.json.JSONObject; import cn.hutool.json.JSONObject;
import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.util.object.BeanUtils; import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.module.contractorder.api.dto.PrchOrdDtlDTO; import com.zt.plat.module.contractorder.api.dto.order.PrchOrdDtlDTO;
import com.zt.plat.module.contractorder.api.dto.PurchaseOrderWithDetailsDTO; import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO;
import com.zt.plat.module.contractorder.api.dto.contract.ContractRespDTO; import com.zt.plat.module.contractorder.api.dto.contract.ContractRespDTO;
import com.zt.plat.module.contractorder.api.dto.order.SalesOrdDtlDTO;
import com.zt.plat.module.contractorder.api.vo.contract.ContractSaveReqVO; import com.zt.plat.module.contractorder.api.vo.contract.ContractSaveReqVO;
import com.zt.plat.module.contractorder.api.vo.contract.international.*; import com.zt.plat.module.contractorder.api.vo.contract.international.*;
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.PurchaseOrderDetailsRespVO; import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.PurchaseOrderDetailsRespVO;
@@ -13,10 +15,15 @@ import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractMainDO;
import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractOtherFieldDO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractOtherFieldDO;
import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractOtherFormDO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractOtherFormDO;
import com.zt.plat.module.contractorder.dal.dataobject.contract.SystemRelativityDO; import com.zt.plat.module.contractorder.dal.dataobject.contract.SystemRelativityDO;
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PurchaseOrderDO;
import com.zt.plat.module.contractorder.dal.dataobject.salesorder.SalesOrderDO;
import com.zt.plat.module.contractorder.dal.dataobject.salesorder.SalesOrderDetailDO;
import com.zt.plat.module.contractorder.dal.mysql.contract.ContractMainMapper; import com.zt.plat.module.contractorder.dal.mysql.contract.ContractMainMapper;
import com.zt.plat.module.contractorder.dal.mysql.contract.ContractOtherFieldMapper; import com.zt.plat.module.contractorder.dal.mysql.contract.ContractOtherFieldMapper;
import com.zt.plat.module.contractorder.dal.mysql.contract.ContractOtherFormMapper; import com.zt.plat.module.contractorder.dal.mysql.contract.ContractOtherFormMapper;
import com.zt.plat.module.contractorder.dal.mysql.contract.SystemRelativityMapper; import com.zt.plat.module.contractorder.dal.mysql.contract.SystemRelativityMapper;
import com.zt.plat.module.contractorder.dal.mysql.salesorder.SalesOrderDetailMapper;
import com.zt.plat.module.contractorder.dal.mysql.salesorder.SalesOrderMapper;
import com.zt.plat.module.contractorder.enums.contract.DictEnum; import com.zt.plat.module.contractorder.enums.contract.DictEnum;
import com.zt.plat.module.contractorder.service.contract.ContractService; import com.zt.plat.module.contractorder.service.contract.ContractService;
import com.zt.plat.module.contractorder.service.purchaseorder.PurchaseOrderService; import com.zt.plat.module.contractorder.service.purchaseorder.PurchaseOrderService;
@@ -55,6 +62,7 @@ public class ContractApiImpl implements ContractApi {
@Resource @Resource
private SystemRelativityMapper systemRelativityMapper; private SystemRelativityMapper systemRelativityMapper;
@Override @Override
public ContractRespDTO getContractByPaperNumber(String contractPaperNumber) { public ContractRespDTO getContractByPaperNumber(String contractPaperNumber) {
return contractService.getFormulasByPaperNumber(contractPaperNumber); return contractService.getFormulasByPaperNumber(contractPaperNumber);
@@ -67,21 +75,74 @@ public class ContractApiImpl implements ContractApi {
@Override @Override
public CommonResult<List<PurchaseOrderWithDetailsDTO>> getOrderByOrderNo(List<String> orderNoS) { public CommonResult<List<PurchaseOrderWithDetailsDTO>> getOrderByOrderNo(List<String> orderNoS) {
List<PurchaseOrderDO> orderByNos = purchaseOrderService.getOrderByNos(orderNoS);
if (orderByNos.isEmpty()) {
return success(new ArrayList<>());
}
List<PurchaseOrderWithDetailsDTO> order = new ArrayList<>();
List<String> purchaseOrderNoS = new ArrayList<>();
List<String> salesOrdNoS = new ArrayList<>();
orderByNos.forEach(f -> {
if ("SALE".equals(f.getSplyBsnTp())) {
// 销售订单
salesOrdNoS.add(f.getSystemOrderNumber());
} else {
// 非销售订单(采购订单)
purchaseOrderNoS.add(f.getSystemOrderNumber());
}
});
// 处理采购订单详情
List<PurchaseOrderWithDetailsDTO> purchaseOrderDetails = getPurchaseOrderDetails(purchaseOrderNoS);
if (!purchaseOrderDetails.isEmpty()) {
order.addAll(purchaseOrderDetails);
}
// 处理销售订单详情
List<PurchaseOrderWithDetailsDTO> salesOrdDetails = getSalesOrdDetails(salesOrdNoS);
if (!salesOrdDetails.isEmpty()) {
order.addAll(salesOrdDetails);
}
return success(order);
}
private List<PurchaseOrderWithDetailsDTO> getSalesOrdDetails(List<String> orderNoS) {
if (orderNoS.isEmpty()) {
return new ArrayList<>();
}
SalesOrderMapper salesOrderMapper = SpringUtil.getBean(SalesOrderMapper.class);
SalesOrderDetailMapper salesOrderDetailMapper = SpringUtil.getBean(SalesOrderDetailMapper.class);
List<SalesOrderDO> salesOrderDOS = salesOrderMapper.selectList(SalesOrderDO::getSystemOrderNumber, orderNoS);
if (salesOrderDOS.isEmpty()) {
return new ArrayList<>();
}
List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = BeanUtils.toBean(salesOrderDOS, PurchaseOrderWithDetailsDTO.class);
purchaseOrderWithDetailsDTOS.forEach(purchaseOrderWithDetailsDTO -> {
List<SalesOrderDetailDO> salesOrderDetailDOS = salesOrderDetailMapper.selectList(SalesOrderDetailDO::getOrderId, purchaseOrderWithDetailsDTO.getId());
List<SalesOrdDtlDTO> salesOrdDtlDTOS = BeanUtils.toBean(salesOrderDetailDOS, SalesOrdDtlDTO.class);
purchaseOrderWithDetailsDTO.setSalesOrdDtlDTOS(salesOrdDtlDTOS);
});
return purchaseOrderWithDetailsDTOS;
}
private List<PurchaseOrderWithDetailsDTO> getPurchaseOrderDetails(List<String> orderNoS) {
if (orderNoS.isEmpty()) {
return new ArrayList<>();
}
List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = new ArrayList<>(); List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = new ArrayList<>();
List<PurchaseOrderDetailsRespVO> purchaseOrderWithDetailsVOS = purchaseOrderService.getOrderByOrderNo(orderNoS); List<PurchaseOrderDetailsRespVO> purchaseOrderWithDetailsVOS = purchaseOrderService.getOrderByOrderNo(orderNoS);
purchaseOrderWithDetailsVOS.forEach(purchaseOrderWithDetailsVO -> { purchaseOrderWithDetailsVOS.forEach(purchaseOrderWithDetailsVO -> {
if (purchaseOrderWithDetailsVO != null) { if (purchaseOrderWithDetailsVO != null) {
PurchaseOrderWithDetailsDTO purchaseOrderWithDetailsDTO = BeanUtils.toBean(purchaseOrderWithDetailsVO, PurchaseOrderWithDetailsDTO purchaseOrderWithDetailsDTO = BeanUtils.toBean(purchaseOrderWithDetailsVO, PurchaseOrderWithDetailsDTO.class);
PurchaseOrderWithDetailsDTO.class);
if (purchaseOrderWithDetailsVO.getOrderDetails().isEmpty()) { if (purchaseOrderWithDetailsVO.getOrderDetails().isEmpty()) {
purchaseOrderWithDetailsDTO.setOrderDetails(new ArrayList<>()); purchaseOrderWithDetailsDTO.setPrchOrdDtlDTOS(new ArrayList<>());
} else { } else {
purchaseOrderWithDetailsDTO.setOrderDetails(BeanUtils.toBean(purchaseOrderWithDetailsVO.getOrderDetails(), PrchOrdDtlDTO.class)); purchaseOrderWithDetailsDTO.setPrchOrdDtlDTOS(BeanUtils.toBean(purchaseOrderWithDetailsVO.getOrderDetails(), PrchOrdDtlDTO.class));
} }
purchaseOrderWithDetailsDTOS.add(purchaseOrderWithDetailsDTO); purchaseOrderWithDetailsDTOS.add(purchaseOrderWithDetailsDTO);
} }
}); });
return success(purchaseOrderWithDetailsDTOS); return purchaseOrderWithDetailsDTOS;
} }
@Override @Override
@@ -193,7 +254,8 @@ public class ContractApiImpl implements ContractApi {
systemRelativityMapper.insert(saveRelation); systemRelativityMapper.insert(saveRelation);
} }
} else if ("D".equals(operateFlag)) { } else if ("D".equals(operateFlag)) {
if (systemRelativityDO == null || systemRelativityDO.getDownId() == null) throw exception(CONTRACT_NOT_EXISTS); if (systemRelativityDO == null || systemRelativityDO.getDownId() == null)
throw exception(CONTRACT_NOT_EXISTS);
contractId = systemRelativityDO.getDownId(); contractId = systemRelativityDO.getDownId();
contractMainMapper.deleteById(contractId); contractMainMapper.deleteById(contractId);
} else { } else {
@@ -1669,20 +1731,70 @@ public class ContractApiImpl implements ContractApi {
if (ids == null || ids.isEmpty()) { if (ids == null || ids.isEmpty()) {
throw new RuntimeException("订单id为空"); throw new RuntimeException("订单id为空");
} }
List<PurchaseOrderDO> ordersByIds = purchaseOrderService.getOrdersByIds(ids.stream().map(String::valueOf).toList());
List<Long> purchaseOrderIds = new ArrayList<>();
List<Long> salesOrderIds = new ArrayList<>();
if (ordersByIds.isEmpty()) {
return CommonResult.success(new ArrayList<>());
}
ordersByIds.forEach(o->{
if ("SALE".equals(o.getSplyBsnTp())) {
// 销售订单
salesOrderIds.add(o.getId());
} else {
// 非销售订单(采购订单)
purchaseOrderIds.add(o.getId());
}
});
List<PurchaseOrderWithDetailsDTO> purchaseOrderDetails = getSalesOrdDetailsByIds(purchaseOrderIds);
List<PurchaseOrderWithDetailsDTO> salesOrdDetails = getPurchaseOrderDetailsByIds(salesOrderIds);
if (!purchaseOrderDetails.isEmpty()) {
purchaseOrderDetails.addAll(salesOrdDetails);
}
if (!salesOrdDetails.isEmpty()) {
purchaseOrderDetails.addAll(salesOrdDetails);
}
return CommonResult.success(purchaseOrderDetails);
}
private List<PurchaseOrderWithDetailsDTO> getSalesOrdDetailsByIds(List<Long> ids) {
if (ids.isEmpty()) {
return new ArrayList<>();
}
SalesOrderMapper salesOrderMapper = SpringUtil.getBean(SalesOrderMapper.class);
SalesOrderDetailMapper salesOrderDetailMapper = SpringUtil.getBean(SalesOrderDetailMapper.class);
List<SalesOrderDO> salesOrderDOS = salesOrderMapper.selectList(SalesOrderDO::getId, ids);
if (salesOrderDOS.isEmpty()) {
return new ArrayList<>();
}
List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = BeanUtils.toBean(salesOrderDOS, PurchaseOrderWithDetailsDTO.class);
purchaseOrderWithDetailsDTOS.forEach(purchaseOrderWithDetailsDTO -> {
List<SalesOrderDetailDO> salesOrderDetailDOS = salesOrderDetailMapper.selectList(SalesOrderDetailDO::getOrderId, purchaseOrderWithDetailsDTO.getId());
List<SalesOrdDtlDTO> salesOrdDtlDTOS = BeanUtils.toBean(salesOrderDetailDOS, SalesOrdDtlDTO.class);
purchaseOrderWithDetailsDTO.setSalesOrdDtlDTOS(salesOrdDtlDTOS);
});
return purchaseOrderWithDetailsDTOS;
}
private List<PurchaseOrderWithDetailsDTO> getPurchaseOrderDetailsByIds(List<Long> ids) {
if (ids.isEmpty()) {
return new ArrayList<>();
}
List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = new ArrayList<>(); List<PurchaseOrderWithDetailsDTO> purchaseOrderWithDetailsDTOS = new ArrayList<>();
List<PurchaseOrderDetailsRespVO> purchaseOrderWithDetailsVOS = purchaseOrderService.getOrderByIds(ids); List<PurchaseOrderDetailsRespVO> purchaseOrderWithDetailsVOS = purchaseOrderService.getOrderByIds(ids);
purchaseOrderWithDetailsVOS.forEach(purchaseOrderWithDetailsVO -> { purchaseOrderWithDetailsVOS.forEach(purchaseOrderWithDetailsVO -> {
if (purchaseOrderWithDetailsVO != null) { if (purchaseOrderWithDetailsVO != null) {
PurchaseOrderWithDetailsDTO purchaseOrderWithDetailsDTO = BeanUtils.toBean(purchaseOrderWithDetailsVO, PurchaseOrderWithDetailsDTO purchaseOrderWithDetailsDTO = BeanUtils.toBean(purchaseOrderWithDetailsVO, PurchaseOrderWithDetailsDTO.class);
PurchaseOrderWithDetailsDTO.class);
if (purchaseOrderWithDetailsVO.getOrderDetails().isEmpty()) { if (purchaseOrderWithDetailsVO.getOrderDetails().isEmpty()) {
purchaseOrderWithDetailsDTO.setOrderDetails(new ArrayList<>()); purchaseOrderWithDetailsDTO.setPrchOrdDtlDTOS(new ArrayList<>());
} else { } else {
purchaseOrderWithDetailsDTO.setOrderDetails(BeanUtils.toBean(purchaseOrderWithDetailsVO.getOrderDetails(), PrchOrdDtlDTO.class)); purchaseOrderWithDetailsDTO.setPrchOrdDtlDTOS(BeanUtils.toBean(purchaseOrderWithDetailsVO.getOrderDetails(), PrchOrdDtlDTO.class));
} }
purchaseOrderWithDetailsDTOS.add(purchaseOrderWithDetailsDTO); purchaseOrderWithDetailsDTOS.add(purchaseOrderWithDetailsDTO);
} }
}); });
return success(purchaseOrderWithDetailsDTOS); return purchaseOrderWithDetailsDTOS;
} }
} }

View File

@@ -77,7 +77,7 @@ public class PrchOrdDtlDetailsRespVO {
* 税码(字典: PRCH_TAX);推送ERP * 税码(字典: PRCH_TAX);推送ERP
*/ */
private BigDecimal taxNum; private String taxNum;
/** /**
* 是否基于GR的发票校验;推送ERP * 是否基于GR的发票校验;推送ERP
*/ */

View File

@@ -1,5 +1,6 @@
package com.zt.plat.module.contractorder.controller.admin.salesorder; package com.zt.plat.module.contractorder.controller.admin.salesorder;
import cn.hutool.extra.spring.SpringUtil;
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.CommonResult;
@@ -8,7 +9,9 @@ import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO;
import com.zt.plat.framework.common.util.object.BeanUtils; import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.framework.excel.core.util.ExcelUtils; import com.zt.plat.framework.excel.core.util.ExcelUtils;
import com.zt.plat.module.contractorder.api.ContractApi;
import com.zt.plat.module.contractorder.api.ContractApiImpl; import com.zt.plat.module.contractorder.api.ContractApiImpl;
import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO;
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.*; import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.*;
import com.zt.plat.module.contractorder.controller.admin.salesorder.vo.SalesOrderPageReqVO; import com.zt.plat.module.contractorder.controller.admin.salesorder.vo.SalesOrderPageReqVO;
import com.zt.plat.module.contractorder.controller.admin.salesorder.vo.SalesOrderRespVO; import com.zt.plat.module.contractorder.controller.admin.salesorder.vo.SalesOrderRespVO;
@@ -26,12 +29,14 @@ import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import org.redisson.api.RObject;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.Objects;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.EXPORT; import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static com.zt.plat.framework.common.pojo.CommonResult.success; import static com.zt.plat.framework.common.pojo.CommonResult.success;
@@ -141,6 +146,7 @@ public class SalesOrderController implements BusinessControllerMarker {
public CommonResult<Boolean> orderPassReject(@RequestBody SalesOrderReviewReqVO reqVO) { public CommonResult<Boolean> orderPassReject(@RequestBody SalesOrderReviewReqVO reqVO) {
return success(salesOrderService.orderPassReject(reqVO)); return success(salesOrderService.orderPassReject(reqVO));
} }
//关联订单 //关联订单
@PostMapping("/link-order") @PostMapping("/link-order")
@Operation(summary = "关联订单") @Operation(summary = "关联订单")
@@ -168,5 +174,4 @@ public class SalesOrderController implements BusinessControllerMarker {
salesOrderService.updateOrderStatusByIdOrOrderNo(req); salesOrderService.updateOrderStatusByIdOrOrderNo(req);
return success(true); return success(true);
} }
} }

View File

@@ -124,6 +124,25 @@ public interface PurchaseOrderService {
* @return 结果 * @return 结果
*/ */
Boolean linkOrder(@Valid LinkOrderReqVO LinkOrderReqVO); Boolean linkOrder(@Valid LinkOrderReqVO LinkOrderReqVO);
/**
* 获取订单详情
*
* @param ids 订单id
* @return 订单详情
*/
List<PurchaseOrderDetailsRespVO> getOrderByIds(List<Long> ids); List<PurchaseOrderDetailsRespVO> getOrderByIds(List<Long> ids);
/**
* 获取订单详情
*
* @param orderNos 订单编号
* @return 订单详情
*/
List<PurchaseOrderDO> getOrderByNos(List<String> orderNos);
/**
* 获取订单详情
*
* @param ids 订单id
* @return 订单详情
*/
List<PurchaseOrderDO> getOrdersByIds(List<String> ids);
} }

View File

@@ -677,4 +677,14 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
}); });
return purchaseOrderDetailsRespVOS; return purchaseOrderDetailsRespVOS;
} }
@Override
public List<PurchaseOrderDO> getOrderByNos(List<String> orderNos) {
return purchaseOrderMapper.selectList(PurchaseOrderDO::getSystemOrderNumber, orderNos);
}
@Override
public List<PurchaseOrderDO> getOrdersByIds(List<String> ids) {
return purchaseOrderMapper.selectByIds(ids);
}
} }