yzc 10 mesi fa
parent
commit
44aa4a711e

+ 0 - 14
hx-sale/src/main/java/com/fjhx/sale/service/contract/ContractProductService.java

@@ -61,18 +61,4 @@ public interface ContractProductService extends BaseService<ContractProduct> {
      */
     List<ContractProductVo> getNoPackContractProductById(String customerId, String contractIds);
 
-    /**
-     * ehsd-交接单分页
-     */
-    Page<ContractProductVo> getEHSDPage(ContractProductSelectDto dto);
-
-    /**
-     * ehsd-待质检分页
-     */
-    Page<ContractProductVo> getEHSDQualityPage(ContractProductSelectDto dto);
-
-    /**
-     * 合同交接单--分页
-     */
-    Page<ContractProductVo> contractHandoverPage(ContractProductSelectDto dto);
 }

+ 5 - 255
hx-sale/src/main/java/com/fjhx/sale/service/contract/impl/ContractProductServiceImpl.java

@@ -2,15 +2,9 @@ package com.fjhx.sale.service.contract.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
-import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fjhx.common.constant.SourceConstant;
-import com.fjhx.common.service.contract.ContractTemplateService;
-import com.fjhx.common.service.corporation.CorporationService;
-import com.fjhx.customer.service.customer.CustomerService;
 import com.fjhx.flow.service.flow.FlowExampleService;
 import com.fjhx.item.entity.product.po.ProductInfo;
 import com.fjhx.item.service.product.ProductClassifyService;
@@ -21,18 +15,12 @@ import com.fjhx.sale.entity.contract.dto.ContractProductDto;
 import com.fjhx.sale.entity.contract.dto.ContractProductSelectDto;
 import com.fjhx.sale.entity.contract.po.ContractProduct;
 import com.fjhx.sale.entity.contract.vo.ContractProductVo;
-import com.fjhx.sale.entity.purchase.po.EhsdPurchaseProduct;
 import com.fjhx.sale.mapper.contract.ContractProductMapper;
-import com.fjhx.sale.service.claim.ClaimContractService;
 import com.fjhx.sale.service.contract.ContractProductService;
-import com.fjhx.sale.service.purchase.EhsdPurchaseProductService;
 import com.fjhx.tenant.utils.DeptUstil;
-import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.wrapper.IWrapper;
-import com.ruoyi.common.utils.wrapper.SqlField;
-import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.system.utils.UserUtil;
 import org.apache.commons.collections4.MapUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -50,7 +38,7 @@ import java.util.stream.Collectors;
  * 外销合同-产品 服务实现类
  * </p>
  *
- * @author
+ * @author _
  * @since 2023-04-17
  */
 @Service
@@ -58,55 +46,20 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
 
     @Autowired
     private ProductInfoService productInfoService;
-
     @Autowired
     private ProductClassifyService productClassifyService;
-
     @Autowired
     private PurchaseDetailService purchaseDetailService;
-
-    @Autowired
-    private CustomerService customerService;
-
-    @Autowired
-    private CorporationService corporationService;
-
-    @Autowired
-    private ContractTemplateService contractTemplateService;
-
     @Autowired
     private FlowExampleService flowExampleService;
-    @Autowired
-    private ClaimContractService claimContractService;
-    @Autowired
-    private ISysUserService userService;
-    @Autowired
-    private EhsdPurchaseProductService ehsdPurchaseProductService;
 
     /**
      * 分页
-     *
-     * @param dto
-     * @return
      */
     @Override
     public Page<ContractProductVo> getPage(ContractProductSelectDto dto) {
         IWrapper<ContractProduct> wrapper = getWrapper();
         wrapper.orderByDesc("t1", ContractProduct::getCreateTime);
-//        wrapper.ne("t1", ContractProduct::getExpendQuantity, 0);
-//        wrapper.between("t2", Contract::getStatus, FlowStatusEnum1.PASS.getKey(), FlowStatusEnum1.CANCELLATION.getKey() - 1);
-//        if (ObjectUtil.isNotEmpty(dto.getDataType()) && dto.getDataType() == 0) {//合同交接单
-//            wrapper.ne("t1", ContractProduct::getExpendQuantity, BigDecimal.ZERO);
-//        }
-//        if (ObjectUtil.isNotEmpty(dto.getPurchaseStatus()) && dto.getPurchaseStatus() == 2) {//已采购
-//            wrapper.eq("t1", ContractProduct::getExpendQuantity, BigDecimal.ZERO);
-//        } 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) {//未采购
-//            wrapper.apply("t1.expend_quantity = t1.quantity");
-//        }
-//        wrapper.eq("t2", Contract::getIssue, 1);
         if (StringUtils.isNotEmpty(dto.getKeyword())) {
 
             //关键字检索
@@ -150,24 +103,8 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
             item.setProductHeight(product.getHeight());
             item.setProductColor(product.getColor());
         });
-        //赋值已发起采购数量
-//        List<PurchaseDetailVo> purchaseDetailVoList = purchaseDetailService.getSumCountByDataResourceId(idList);
-//        Map<Long,BigDecimal> pMap = purchaseDetailVoList.stream().collect(Collectors.toMap(PurchaseDetailVo::getDataResourceId,PurchaseDetailVo::getSumCount));
-//        list.forEach(i -> i.setStartPurchaseCount(MapUtils.isNotEmpty(pMap)?BigDecimal.ZERO:pMap.getOrDefault(i.getId(),BigDecimal.ZERO)));
         // 赋值产品分类名称
-        productClassifyService.attributeAssign(records, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
-            item.setProductCategory(productClassify.getName());
-        });
-//
-//        // 赋值公司名称
-//        corporationService.attributeAssign(records, ContractProductVo::getCorporationId, (item, corporation) -> {
-//            item.setCorporationName(corporation.getName());
-//        });
-
-//        // 赋值公司名称
-//        corporationService.attributeAssign(list, ContractProductVo::getCorporationId, (item, corporation) -> {
-//            item.setCorporationName(corporation.getName());
-//        });
+        productClassifyService.attributeAssign(records, ContractProductVo::getProductCategoryId, (item, productClassify) -> item.setProductCategory(productClassify.getName()));
 
         // 赋值业务员名称
         UserUtil.assignmentNickName(records, ContractProductVo::getSalesmanId, ContractProductVo::setUserName);
@@ -204,9 +141,6 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
 
     /**
      * 根据合同ID和客户ID查询未包装的产品
-     *
-     * @param customerId
-     * @return
      */
     @Override
     public List<ContractProductVo> getNoPackContractProductById(String customerId, String contractIds) {
@@ -221,193 +155,12 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
             item.setProductCategoryId(product.getProductClassifyId());
         });
         // 赋值产品分类名称
-        productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
-            item.setProductCategory(productClassify.getName());
-        });
+        productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> item.setProductCategory(productClassify.getName()));
         return list;
     }
 
     /**
-     * 交接单
-     *
-     * @param dto
-     * @return
-     */
-    @Override
-    public Page<ContractProductVo> getEHSDPage(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`"));
-        }
-        if (StringUtils.isNotEmpty(dto.getIds())) {
-            wrapper.in("t1.id", Arrays.asList(dto.getIds().split(",")));
-        }
-        Page<ContractProductVo> page = this.baseMapper.getEHSDPage(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());
-            });
-            // 赋值产品分类名称
-            productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
-                item.setProductCategory(productClassify.getName());
-            });
-
-            //重新赋值待采购数量
-            List<Long> contractProductIds = list.stream().map(ContractProduct::getId).collect(Collectors.toList());
-            List<EhsdPurchaseProduct> purchaseProducts = ehsdPurchaseProductService.getPurchaseProductByContractProductIds(contractProductIds);
-            if (ObjectUtil.isNotEmpty(purchaseProducts)) {
-                Map<Long, List<EhsdPurchaseProduct>> collect = purchaseProducts.stream()
-                        .filter(item -> ObjectUtil.isNotEmpty(item.getDataResourceId()))
-                        .collect(Collectors.groupingBy(EhsdPurchaseProduct::getDataResourceId));
-                for (ContractProduct contractProduct : list) {
-                    List<EhsdPurchaseProduct> ehsdPurchaseProductList = collect.get(contractProduct.getId());
-                    if (ObjectUtil.isEmpty(ehsdPurchaseProductList)) {
-                        continue;
-                    }
-                    BigDecimal purchaseQuantity = ehsdPurchaseProductList.stream().map(EhsdPurchaseProduct::getQuantity).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    BigDecimal subtract = contractProduct.getQuantity().subtract(purchaseQuantity);
-                    contractProduct.setExpendQuantity(subtract);
-                }
-            }
-
-        }
-        return page;
-    }
-
-    /**
-     * 待质检分页
-     *
-     * @param dto
-     * @return
-     */
-    @Override
-    public Page<ContractProductVo> getEHSDQualityPage(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`"));
-        }
-        if (StringUtils.isNotEmpty(dto.getOrderType())) {
-            wrapper.eq("t1.orderType", dto.getOrderType());
-        }
-        if (StringUtils.isNotEmpty(dto.getQualityStatus())) {
-            wrapper.eq("t1.qualityStatus", dto.getQualityStatus());
-        }
-        if (StringUtils.isNotEmpty(dto.getSummary())) {
-            wrapper.eq("t1.summary", dto.getSummary());
-        }
-        Page<ContractProductVo> page = this.baseMapper.getEHSDPage(dto.getPage(), wrapper);
-        List<ContractProductVo> list = page.getRecords();
-//        //查出所有质检状态
-//        List<Long> contractProductIds = list.stream().map(ContractProductVo::getId).collect(Collectors.toList());
-//        List<EhsdQuality> qualityList = ehsdQualityService.list(Wrappers.<EhsdQuality>query().lambda().in(EhsdQuality::getBusinessId,contractProductIds));
-//        Map<Long,Integer> qualityMap = qualityList.stream().distinct().collect(Collectors.toMap(EhsdQuality::getBusinessId,EhsdQuality::getStatus));
-        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());
-            });
-            // 赋值产品分类名称
-            productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
-                item.setProductCategory(productClassify.getName());
-            });
-            // 赋值客户名称
-            customerService.attributeAssign(list, ContractProductVo::getBuyCorporationId, (item, customer) -> {
-                item.setCustomerName(customer.getName());
-            });
-            // 供应商名称
-            corporationService.attributeAssign(list, ContractProductVo::getSellCorporationId, (item, supplier) -> {
-                item.setSupplyName(supplier.getName());
-                item.setSupplyId(item.getId());
-            });
-//            if(CollectionUtils.isNotEmpty(qualityMap)){
-//                list.forEach(i -> i.setQualityStatus(qualityMap.getOrDefault(i.getId(),null)));
-//            }
-        }
-        return page;
-    }
-
-    /**
-     * 合同交接单--分页
-     */
-    @Override
-    public Page<ContractProductVo> contractHandoverPage(ContractProductSelectDto dto) {
-        IWrapper<ContractProduct> wrapper = getWrapper();
-        wrapper.orderByDesc("t1.create_time");
-        wrapper.eq("t2.is_delivery_file", 1);
-        if (StringUtils.isNotEmpty(dto.getKeyword())) {
-            DynamicDataSourceContextHolder.push(SourceConstant.BASE);
-            List<SysUser> list = userService.list(Wrappers.<SysUser>lambdaQuery().like(SysUser::getUserName, dto.getKeyword()));
-            DynamicDataSourceContextHolder.poll();
-            List<Long> userIds = list.stream().map(SysUser::getUserId).collect(Collectors.toList());
-            wrapper.and(q -> q
-                    .like("t2.`code`", dto.getKeyword())
-                    .or().like("t2.`user_name`", dto.getKeyword())
-                    .or().in("t2.create_user", userIds)
-            );
-        }
-        wrapper.eq("t2.`status`", 30);
-        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());
-            });
-            //赋值业务员名称
-            UserUtil.assignmentNickName(list, ContractProductVo::getCreateUser, ContractProductVo::setUserName);
-
-            //重新赋值待采购数量
-            List<Long> contractProductIds = list.stream().map(ContractProduct::getId).collect(Collectors.toList());
-            List<EhsdPurchaseProduct> purchaseProducts = ehsdPurchaseProductService.getPurchaseProductByContractProductIds(contractProductIds);
-            if (ObjectUtil.isNotEmpty(purchaseProducts)) {
-                Map<Long, List<EhsdPurchaseProduct>> collect = purchaseProducts.stream()
-                        .filter(item -> ObjectUtil.isNotEmpty(item.getDataResourceId()))
-                        .collect(Collectors.groupingBy(EhsdPurchaseProduct::getDataResourceId));
-                for (ContractProduct contractProduct : list) {
-                    List<EhsdPurchaseProduct> ehsdPurchaseProductList = collect.get(contractProduct.getId());
-                    if (ObjectUtil.isEmpty(ehsdPurchaseProductList)) {
-                        continue;
-                    }
-                    BigDecimal purchaseQuantity = ehsdPurchaseProductList.stream().map(EhsdPurchaseProduct::getQuantity).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    BigDecimal subtract = contractProduct.getQuantity().subtract(purchaseQuantity);
-                    contractProduct.setExpendQuantity(subtract);
-                }
-            }
-        }
-        return page;
-    }
-
-    /**
      * 根据合同产品IDS查询合同产品
-     *
-     * @param ids
-     * @return
      */
     @Override
     public List<ContractProductVo> getListDetail(List<Long> ids) {
@@ -437,9 +190,7 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
             });
 
             // 赋值产品分类名称
-            productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> {
-                item.setProductCategory(productClassify.getName());
-            });
+            productClassifyService.attributeAssign(list, ContractProductVo::getProductCategoryId, (item, productClassify) -> item.setProductCategory(productClassify.getName()));
 
 
         }
@@ -449,8 +200,7 @@ public class ContractProductServiceImpl extends ServiceImpl<ContractProductMappe
     @Override
     public ContractProductVo detail(Long id) {
         ContractProduct ContractProduct = this.getById(id);
-        ContractProductVo result = BeanUtil.toBean(ContractProduct, ContractProductVo.class);
-        return result;
+        return BeanUtil.toBean(ContractProduct, ContractProductVo.class);
     }
 
     @Override