futian.liu
2023-12-22 3e9a4b3480e6508f3c6f7ac8723509d8b1120d20
consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
@@ -19,7 +19,10 @@
import com.consum.base.core.CodeGeneratorEnum;
import com.consum.base.core.CodeGeneratorService;
import com.consum.base.core.type.CategoryType;
import com.consum.base.core.type.StatesType;
import com.consum.base.core.type.TransferBusinessType;
import com.consum.base.core.type.TransferStatesType;
import com.consum.base.core.type.WareHouseType;
import com.consum.base.core.utils.CurrencyUtil;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.MapUtils;
@@ -114,10 +117,10 @@
        // 调拨类型单据
        if (businessType == TransferBusinessType.STOCK_TRANSFER.getValue()) {
            // 入库仓库为当前用户的默认仓库
            // 入库仓库为当前用户的默认仓库中的第一个
            String tenantId = sysInfo.getTenantId();
            String tenantName = sysInfo.getTenantName();
            BaseWarehouse warehouse = baseWarehouseService.getDefaultWarehouseByAgencyId(Long.valueOf(tenantId));
            BaseWarehouse warehouse = baseWarehouseService.getWarehouseByAgencyId(Long.valueOf(tenantId), null);
            if (warehouse == null) {
                log.error("仓库不存在");
                throw new Exception("仓库不存在");
@@ -147,13 +150,13 @@
            baseWarehouse.setId(baseWarehouseId);
            BaseWarehouse warehouse = baseWarehouseService.get(baseWarehouse);
            lWhFormTransfer.setInWarehouseType(1);
            lWhFormTransfer.setInWarehouseType(WareHouseType.DEPARTMENT.getValue());
            lWhFormTransfer.setInWarehouseId(param.getDepartmentId());
            lWhFormTransfer.setInWarehouseName(param.getDepartmentName());
            lWhFormTransfer.setInOperatorName(param.getOperatorName());
            lWhFormTransfer.setInTime(param.getCreateTime());
            lWhFormTransfer.setOutWarehouseType(0);
            lWhFormTransfer.setOutWarehouseType(WareHouseType.TENANT.getValue());
            lWhFormTransfer.setOutWarehouseId(warehouse.getId());
            lWhFormTransfer.setOutWarehouseName(warehouse.getWarehouseName());
@@ -176,7 +179,7 @@
        lWhFormTransfer.setOperatorName(sysInfo.getUserName());
        lWhFormTransfer.setCreateTime(param.getCreateTime());
        // 0=待出库;1=待接收;2=已入库库:4=已撤销
        lWhFormTransfer.setStates(0);
        lWhFormTransfer.setStates(TransferStatesType.OUT_PENDING.getValue());
        lWhFormTransfer.setProcureDoc(param.getProcureDoc());
        int flag1 = this.insert(lWhFormTransfer);
@@ -216,10 +219,11 @@
                    // 根据物品型号查询物品库存
                    // 调拨申请时没有仓库id 查询上级机构的所有仓库
                    List<BaseWarehouse> baseWareHouseList =
                        baseWarehouseService.getBaseWareHouseList(outAgencyId, null, (short)1);
                        baseWarehouseService.getBaseWareHouseList(outAgencyId, StatesType.NORMAL.getValue());
                    List<Long> warehouseIdList =
                        baseWareHouseList.stream().map(BaseWarehouse::getId).collect(Collectors.toList());
                    int goodsNum = lWhGoodsService.queryGoodsModelNum(0, warehouseIdList, baseGoodsModelsId, 1, null);
                    int goodsNum = lWhGoodsService.queryGoodsModelNum(WareHouseType.TENANT.getValue(), warehouseIdList,
                        baseGoodsModelsId, 1, null);
                    lWhProcureModel.setWorehouseCount(goodsNum);
                }
                if (businessType == TransferBusinessType.DEPARTMENT_PROCURE.getValue()) {
@@ -541,7 +545,7 @@
     */
    public int updateStatus(Long id) {
        LWhFormTransfer lWhFormTransfer = new LWhFormTransfer(id);
        lWhFormTransfer.setStates(4);
        lWhFormTransfer.setStates(TransferStatesType.CANCEL.getValue());
        return this.update(lWhFormTransfer);
    }
@@ -640,11 +644,11 @@
        }
        if (param.getOutAgencyId() != null) {
            sql.append("AND ft.OUT_AGENCY_ID like :outAgencyId ");
            params.put("outAgencyId", param.getOutAgencyId());
            params.put("outAgencyId", param.getOutAgencyId() + StringUtils.CHAR_PERCENT);
        }
        if (param.getOutAgencyId() != null) {
        if (param.getInAgencyId() != null) {
            sql.append("AND ft.IN_AGENCY_ID like :inAgencyId ");
            params.put("inAgencyId", param.getInAgencyId());
            params.put("inAgencyId", param.getInAgencyId() + StringUtils.CHAR_PERCENT);
        }
        if (StringUtils.isNotEmpty(param.getOperatorName())) {
            sql.append("AND ft.OPERATOR_NAME = :operatorName ");