石广澎
2023-12-01 67b253c743840e6cc1720e824b0edb449e282a37
consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java
@@ -10,11 +10,14 @@
import com.walker.infrastructure.utils.NumberGenerator;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -25,6 +28,7 @@
 * @Version 1.0
 **/
@Service
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class LWhWarningCoreServiceImpl {
    @Resource
@@ -45,6 +49,7 @@
        if (baseModelIdList == null) {
            baseModelIdList = new ArrayList<>();
        }
        sysInfo = sysInfo == null ? new FinSysTenantUser() : sysInfo;
        // 获取到达到阈值的物品
        List<Map<String, Object>> kuCunNotifyList = lWhWarningService.checkKuCun(warehouseType, warehouseId, baseModelIdList);
        //
@@ -53,6 +58,11 @@
            kuCunNormalModel(warehouseType, warehouseId, baseModelIdList);
            return;
        }
        List<Long> allChangModelList = baseModelIdList.stream()
                .distinct()
                .collect(Collectors.toList());
        baseModelIdList = allChangModelList;
        // 将数据插入库存预警【WH_WARNING】
        BaseWarehouse baseWarehouses = baseWarehouseService.get(new BaseWarehouse(warehouseId));
@@ -105,8 +115,15 @@
    private String KU_CUN_NORMAL_MODEL = "update WH_WARNING set STATES=2 where WAREHOUSE_TYPE=? and BASE_WAREHOUSE_ID=?";
    private int kuCunNormalModel(Short warehouseType, Long warehouseId, List<Long> baseModelIdList) {
        if (CollectionUtils.isEmpty(baseModelIdList)) {
    /**
     *
     * @param warehouseType
     * @param warehouseId
     * @param normalBaseModelIdList 库存正常的
     * @return
     */
    private int kuCunNormalModel(Short warehouseType, Long warehouseId, List<Long> normalBaseModelIdList) {
        if (CollectionUtils.isEmpty(normalBaseModelIdList)) {
            return 1;
        }
        ArrayList<Object> params = new ArrayList<>();
@@ -114,9 +131,8 @@
        params.add(warehouseId);
        StringBuilder sql = new StringBuilder(KU_CUN_NORMAL_MODEL);
        if (!org.springframework.util.CollectionUtils.isEmpty(baseModelIdList)) {
            sql.append(" and BASE_GOODS_MODELS_ID in(?)");
            params.add(baseModelIdList);
        if (!org.springframework.util.CollectionUtils.isEmpty(normalBaseModelIdList)) {
            sql.append(" and BASE_GOODS_MODELS_ID in(").append( org.apache.commons.lang3.StringUtils.join(normalBaseModelIdList, ",")).append(")");
        }
        return lWhWarningService.update(sql.toString(), params.toArray());
    }