|
@@ -82,15 +82,42 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
|
|
|
@Override
|
|
|
public Page<ContractProductVo> getPage(ContractProductSelectDto dto) {
|
|
|
IWrapper<ContractProduct> wrapper = getWrapper();
|
|
|
+ //过滤待处理数量为0的数据
|
|
|
+ wrapper.ne("t1", ContractProduct::getExpendQuantity, 0);
|
|
|
+ //是否到账过滤
|
|
|
+ if (ObjectUtil.isNotEmpty(dto.getIsReceived())) {
|
|
|
+ if (1 == dto.getIsReceived()) {
|
|
|
+ wrapper.isNotNull("co.id");
|
|
|
+ } else {
|
|
|
+ wrapper.isNull("co.id");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return commPage(wrapper, dto);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 采购交接单
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Page<ContractProductVo> getPage1(ContractProductSelectDto dto) {
|
|
|
+ IWrapper<ContractProduct> wrapper = getWrapper();
|
|
|
+ //过滤 已到账 或 预付比例==0 的数据
|
|
|
+ wrapper.and(q -> q.isNotNull("co.id").or().eq("t2.advance_ratio", 0));
|
|
|
+ return commPage(wrapper, dto);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 公共代码抽取
|
|
|
+ */
|
|
|
+ public Page<ContractProductVo> commPage(IWrapper<ContractProduct> wrapper, ContractProductSelectDto dto) {
|
|
|
wrapper.orderByDesc("t1", ContractProduct::getCreateTime);
|
|
|
- wrapper.ne("t1",ContractProduct::getExpendQuantity,0);
|
|
|
wrapper.between("t2", Contract::getStatus, FlowStatusEnum.PASS.getKey(), FlowStatusEnum.CANCELLATION.getKey() - 1);
|
|
|
- if(ObjectUtil.isNotEmpty(dto.getDataType())&&dto.getDataType()==0){//合同交接单
|
|
|
+ if (ObjectUtil.isNotEmpty(dto.getDataType()) && dto.getDataType() == 0) {//合同交接单
|
|
|
wrapper.ne("t1", ContractProduct::getExpendQuantity, BigDecimal.ZERO);
|
|
|
}
|
|
|
- if(ObjectUtil.isNotEmpty(dto.getPurchaseStatus())&&dto.getPurchaseStatus()==2){//已采购
|
|
|
+ if (ObjectUtil.isNotEmpty(dto.getPurchaseStatus()) && dto.getPurchaseStatus() == 2) {//已采购
|
|
|
wrapper.eq("t1", ContractProduct::getExpendQuantity, BigDecimal.ZERO);
|
|
|
- }else if(ObjectUtil.isNotEmpty(dto.getPurchaseStatus())&&dto.getPurchaseStatus()==1){//部分采购
|
|
|
+ } else if (ObjectUtil.isNotEmpty(dto.getPurchaseStatus()) && dto.getPurchaseStatus() == 1) {//部分采购
|
|
|
wrapper.gt("t1", ContractProduct::getExpendQuantity, BigDecimal.ZERO);
|
|
|
wrapper.apply("t1.expend_quantity <t1.quantity");
|
|
|
}else if(ObjectUtil.isNotEmpty(dto.getPurchaseStatus())&&dto.getPurchaseStatus()==0){//未采购
|