|
@@ -1,8 +1,12 @@
|
|
|
package com.fjhx.sale.service.contract.impl;
|
|
|
|
|
|
import cn.hutool.http.HttpRequest;
|
|
|
+import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
+import com.fjhx.common.constant.SourceConstant;
|
|
|
import com.fjhx.common.enums.FlowStatusEnum;
|
|
|
+import com.fjhx.common.service.corporation.CorporationService;
|
|
|
+import com.fjhx.customer.service.customer.CustomerService;
|
|
|
import com.fjhx.item.service.product.ProductClassifyService;
|
|
|
import com.fjhx.item.service.product.ProductInfoService;
|
|
|
import com.fjhx.purchase.entity.purchase.vo.PurchaseDetailVo;
|
|
@@ -57,6 +61,11 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
|
|
|
|
|
|
@Autowired
|
|
|
private PurchaseDetailService purchaseDetailService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CustomerService customerService;
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 分页
|
|
|
* @param dto
|
|
@@ -147,6 +156,40 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 合同交接单--分页
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Page<ContractProductVo> contractHandoverPage(ContractProductSelectDto dto) {
|
|
|
+ IWrapper<ContractProduct> wrapper = getWrapper();
|
|
|
+ wrapper.orderByDesc("t1.ct");
|
|
|
+ if(StringUtils.isNotEmpty(dto.getKeyword())){
|
|
|
+ wrapper.keyword(dto.getKeyword(),new SqlField("t1.`contractCode`"),new SqlField("t1.`userName`"));
|
|
|
+ }
|
|
|
+ wrapper.ge("t2.`status`",30);
|
|
|
+ wrapper.lt("t2.`status`",88);
|
|
|
+ wrapper.gt("t1.expend_quantity",0);
|
|
|
+ Page<ContractProductVo> page = this.baseMapper.contractHandoverPage(dto.getPage(), wrapper);
|
|
|
+
|
|
|
+ List<ContractProductVo> list = page.getRecords();
|
|
|
+ if(CollectionUtils.isNotEmpty(list)){
|
|
|
+ // 赋值产品属性
|
|
|
+ productInfoService.attributeAssign(list, ContractProductVo::getProductId, (item, product) -> {
|
|
|
+ item.setProductCode(product.getCode());
|
|
|
+ item.setProductUnit(product.getUnit());
|
|
|
+ item.setProductType(product.getType());
|
|
|
+ item.setProductName(product.getName());
|
|
|
+ item.setProductSpec(product.getSpec());
|
|
|
+ item.setProductCategoryId(product.getProductClassifyId());
|
|
|
+ });
|
|
|
+ // 赋值客户名称
|
|
|
+ customerService.attributeAssign(list, ContractProductVo::getBuyCorporationId, (item, corporation) -> {
|
|
|
+ item.setBuyCorporationName(corporation.getName());
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 根据合同产品IDS查询合同产品
|
|
|
* @param ids
|
|
|
* @return
|
|
@@ -167,6 +210,7 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
|
|
|
c.setSumPurchaseCount(voMap.getOrDefault(c.getId(),BigDecimal.ZERO));
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
// 赋值产品属性
|
|
|
productInfoService.attributeAssign(list, ContractProductVo::getProductId, (item, product) -> {
|
|
|
item.setProductCode(product.getCode());
|
|
@@ -176,10 +220,13 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
|
|
|
item.setProductSpec(product.getSpec());
|
|
|
item.setProductCategoryId(product.getProductClassifyId());
|
|
|
});
|
|
|
+
|
|
|
// 赋值产品分类名称
|
|
|
productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
|
|
|
item.setProductCategory(productClassify.getName());
|
|
|
});
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
return list;
|
|
|
}
|