计划管理相关功能实现
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
package com.zt.plat.module.contractorder.api;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.module.contractorder.api.dto.order.OrderAndPlanDataReqDTO;
|
||||
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;
|
||||
@@ -44,4 +46,8 @@ public interface OrderApi {
|
||||
@GetMapping(PREFIX + "/get-salas-order-details-by-id")
|
||||
@Operation(summary = "通过销售订单明细id获取销售订单详情", description = "通过销售订单明细id获取销售订单详情")
|
||||
CommonResult<SalesOrdDtlDTO> getSalesOrderDetailsByOrderId(@RequestParam("id") Long id);
|
||||
|
||||
@PostMapping(PREFIX + "/query-order-plan-data")
|
||||
@Operation(summary = "根据计划和订单的参数查询相关的订单", description = "根据计划和订单的参数查询相关的订单")
|
||||
CommonResult<PageResult<OrderDTO>> queryOrderPlanData(@RequestBody @Valid OrderAndPlanDataReqDTO reqVO);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.zt.plat.module.contractorder.api.dto.order;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import lombok.Data;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
@Data
|
||||
@Schema(description = "订单和计划数据请求DTO")
|
||||
@Validated
|
||||
public class OrderAndPlanDataReqDTO extends PageParam {
|
||||
//合同编号
|
||||
@Schema(description = "合同编号")
|
||||
private String contractSystemNumber;
|
||||
//纸质合同编号
|
||||
@Schema(description = "纸质合同编号")
|
||||
private String paperContractNumber;
|
||||
//订单号
|
||||
@Schema(description = "订单号")
|
||||
private String orderNumber;
|
||||
//订单分类
|
||||
@Schema(description = "订单分类")
|
||||
//@NotEmpty(message = "订单分类不能为空")
|
||||
private String orderType;
|
||||
//物料编码
|
||||
@Schema(description = "物料编码")
|
||||
private String materialNumber;
|
||||
//物料名称
|
||||
@Schema(description = "物料名称")
|
||||
private String materialName;
|
||||
//客商编码
|
||||
@Schema(description = "客商编码")
|
||||
private String customerNumber;
|
||||
//客商名称
|
||||
@Schema(description = "客商名称")
|
||||
private String customerName;
|
||||
//计划编号
|
||||
@Schema(description = "计划编号")
|
||||
@NotEmpty(message = "计划Id不能为空")
|
||||
private String planId;
|
||||
}
|
||||
@@ -3,6 +3,7 @@ package com.zt.plat.module.contractorder.api;
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.zt.plat.framework.common.exception.ErrorCode;
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import com.zt.plat.module.contractorder.api.dto.order.*;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PrchOrdDtlDO;
|
||||
@@ -183,6 +184,13 @@ public class OrderApiImpl implements OrderApi {
|
||||
return success(BeanUtils.toBean(salesOrderDetailDOS, SalesOrdDtlDTO.class));
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommonResult<PageResult<OrderDTO>> queryOrderPlanData(OrderAndPlanDataReqDTO reqVO) {
|
||||
PageResult<PurchaseOrderDO> pageResult = purchaseOrderService.queryOrderAndPlanData(reqVO);
|
||||
List<OrderDTO> bean = BeanUtils.toBean(pageResult.getList(), OrderDTO.class);
|
||||
return success(new PageResult<>(bean, pageResult.getTotal()));
|
||||
}
|
||||
|
||||
private List<SalesOrderDO> getOrderByIds(List<Long> ids) {
|
||||
return SpringUtil.getBean(SalesOrderMapper.class).selectByIds(ids); // 采购订单与销售订单的
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
|
||||
|
||||
import com.zt.plat.module.contractorder.api.dto.order.OrderAndPlanDataReqDTO;
|
||||
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.PurchaseOrderPageReqVO;
|
||||
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.PurchaseOrderWithDetailsVO;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PurchaseOrderDO;
|
||||
@@ -71,4 +72,6 @@ public interface PurchaseOrderMapper extends BaseMapperX<PurchaseOrderDO> {
|
||||
List<PurchaseOrderWithDetailsVO> selectOrderByIds(@Param("ids") List<Long> id);
|
||||
|
||||
PurchaseOrderDO selectByOrderId(@Param("orderId") Long orderId);
|
||||
|
||||
List<PurchaseOrderDO> queryOrderAndPlanData(OrderAndPlanDataReqDTO reqDTO);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.zt.plat.module.contractorder.service.purchaseorder;
|
||||
import java.util.*;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.module.contractorder.api.dto.order.OrderAndPlanDataReqDTO;
|
||||
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.*;
|
||||
import com.zt.plat.module.contractorder.controller.admin.salesorder.vo.SalesOrderSaveReqVO;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PurchaseOrderDO;
|
||||
@@ -145,4 +146,12 @@ public interface PurchaseOrderService {
|
||||
* @return 订单详情
|
||||
*/
|
||||
List<PurchaseOrderDO> getOrdersByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 查询订单和计划数据
|
||||
*
|
||||
* @param reqDTO 查询条件
|
||||
* @return 订单和计划数据
|
||||
*/
|
||||
PageResult<PurchaseOrderDO> queryOrderAndPlanData(OrderAndPlanDataReqDTO reqDTO);
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.zt.plat.module.bpm.api.task.BpmProcessInstanceApi;
|
||||
import com.zt.plat.module.bpm.api.task.BpmTaskApi;
|
||||
import com.zt.plat.module.bpm.api.task.dto.*;
|
||||
import com.zt.plat.module.bpm.enums.task.BpmProcessInstanceStatusEnum;
|
||||
import com.zt.plat.module.contractorder.api.dto.order.OrderAndPlanDataReqDTO;
|
||||
import com.zt.plat.module.contractorder.api.vo.contract.ContractRespVO;
|
||||
import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.*;
|
||||
import com.zt.plat.module.contractorder.dal.dataobject.contract.SystemRelativityDO;
|
||||
@@ -698,6 +699,8 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
||||
return purchaseOrderMapper.selectByIds(ids);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor=Exception.class)
|
||||
public boolean orderPassReject(PurchaseorderReqVO purchaseorderReqVO) {
|
||||
@@ -788,4 +791,24 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
||||
int number = (int) (Math.random() * 900000 + 100000);
|
||||
return String.valueOf(number);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<PurchaseOrderDO> queryOrderAndPlanData(OrderAndPlanDataReqDTO reqDTO) {
|
||||
// 1. 查询所有符合条件的数据
|
||||
List<PurchaseOrderDO> allData = purchaseOrderMapper.queryOrderAndPlanData(reqDTO);
|
||||
|
||||
// 2. 获取分页参数
|
||||
Integer pageSize = reqDTO.getPageSize();
|
||||
Integer pageNum = reqDTO.getPageNo();
|
||||
|
||||
// 3. 计算分页截取的起始/结束索引
|
||||
int startIndex = (pageNum - 1) * pageSize;
|
||||
int endIndex = Math.min(startIndex + pageSize, allData.size());
|
||||
|
||||
// 4. 截取当前页数据(索引越界时返回空列表)
|
||||
List<PurchaseOrderDO> pageData = startIndex >= allData.size()
|
||||
? new ArrayList<>()
|
||||
: allData.subList(startIndex, endIndex);
|
||||
return new PageResult<>(pageData, (long) allData.size());
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user