futian.liu
2023-12-02 edc87e2fc3760cd7d1230bc058acf5620ea2c465
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
@@ -6,6 +6,7 @@
import com.consum.base.core.utils.MapUtils;
import com.consum.base.core.utils.MapperUtil;
import com.consum.base.core.utils.PageUtil;
import com.consum.base.pojo.excel.InventoryExcelTemplate;
import com.consum.base.pojo.query.LWhFormInventoryQry;
import com.consum.base.pojo.request.FormInventoryParam;
import com.consum.base.pojo.request.LWhFormInventoryParam;
@@ -225,51 +226,6 @@
        return 1;
    }
    /**
     * 完成盘点
     *
     * @author 卢庆阳
     * @date 2023/10/31
     */
//    public int finishPd(LWhFormInventoryParam dto) {
//        //1.根据盘点单id查询盘点单
//        LWhFormInventory lWhFormInventory = this.get(new LWhFormInventory(dto.getId()));
//        if (lWhFormInventory == null) {
//            log.error("根据盘点单id查询盘点单 失败");
//            return 0;
//        }
//        //2.修改盘点单
//        lWhFormInventory.setStates(2);
//        lWhFormInventory.setStopTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
//        int flag1 = this.update(lWhFormInventory);
//        if (flag1 == 0) {
//            log.error("修改盘点单 失败");
//            return 0;
//        }
//        //3.更新盘点单物品
//        List<LWhFormInventoryGoods> inventoryGoodsList = dto.getInventoryGoodsList();
//        if (CollectionUtils.isEmpty(inventoryGoodsList)) {
//            log.error("盘点单物品 为空");
//            return 0;
//        }
//        for (LWhFormInventoryGoods inventoryGoods : inventoryGoodsList) {
//            int errorCounts = inventoryGoods.getInitCounts() - inventoryGoods.getInventoryCounts();
//            if (errorCounts > 0) {
//                inventoryGoods.setInventoryResult(3);
//            } else if (errorCounts < 0) {
//                inventoryGoods.setInventoryResult(2);
//            } else {
//                inventoryGoods.setInventoryResult(1);
//            }
//            inventoryGoods.setErrorCounts(Math.abs(errorCounts));
//        }
//        int flag2 = inventoryGoodsService.update(inventoryGoodsList);
//        if (flag2 != inventoryGoodsList.size()) {
//            log.error("更新盘点单物品 失败");
//            return 0;
//        }
//        return 1;
//    }
    /**
     * @return
@@ -397,4 +353,40 @@
        formInventoryVO.setFormInventoryGoodsList(goodsVOList);
        return formInventoryVO;
    }
    public List<InventoryExcelTemplate> getExportList(Long id) {
        String sql = "SELECT\n"
            + "\tfi.INVENTORY_DATE createTime,\n"
            + "\tfi.STOP_TIME endTime,\n"
            + "\tfi.OPERATOR_NAME,\n"
            + "\tfi.OPERATOR_NAME2 monitorName,\n"
            + "\tfi.AGENCY_NAME tenantName,\n"
            + "\tfig.GOODS_TEMPLATE_NAME templateName,\n"
            + "\tfig.BASE_GOODS_MODELS_NAME baseModelName,\n"
            + "\tfig.INVENTORY_COUNTS num,\n"
            + "\tfig.INIT_COUNTS stockNum,\n"
            + "\tfig.INVENTORY_RESULT,\n"
            + "\tBEIZ1 remark\n"
            + "FROM\n"
            + "\tl_wh_form_inventory fi\n"
            + "\tLEFT JOIN l_wh_form_inventory_goods fig ON fi.ID = fig.WH_FORM_INVENTORY_ID\n"
            + "WHERE\n"
            + "\tfi.ID = :id";
        HashMap<String, Object> param = new HashMap<>();
        param.put("id", id);
        List<Map<String, Object>> select = this.select(sql, param, new MapperUtil());
        if (CollectionUtils.isEmpty(select)) {
            return null;
        }
        List<InventoryExcelTemplate> list = Lists.newArrayList();
        select.forEach(item -> {
            InventoryExcelTemplate inventoryExcelTemplate = MapUtils.convertMapToObj(item, InventoryExcelTemplate.class);
            inventoryExcelTemplate.setInventoryDeception(inventoryExcelTemplate.getInventoryResult() == 1 ? "是" : "否");
            inventoryExcelTemplate.setDeception(
                inventoryExcelTemplate.getInventoryResult() == 1 ? "正常" : (inventoryExcelTemplate.getInventoryResult() == 2 ? "盘盈" : "盘亏"));
            list.add(inventoryExcelTemplate);
        });
        return list;
    }
}