王佳豪
2021-05-05 4c4b488961660194d75e910e476ede81e6061b3d
src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java
@@ -64,11 +64,11 @@
                        CPICMO cpicmo = select.get(0);
                        boolean complete = false;
                        if (cpicmo.getFQty() > 0) {
                            if (cpicmo.getFAuxCommitQty() >= cpicmo.getFQty()) {
                            if (cpicmo.getFAuxCommitQty() == cpicmo.getFQty()) {
                                complete = true;
                            }
                        } else {
                            if (cpicmo.getFAuxCommitQty() >= cpicmo.getFAuxQty()) {
                            if (cpicmo.getFAuxCommitQty() == cpicmo.getFAuxQty()) {
                                complete = true;
                            }
                        }
@@ -96,6 +96,36 @@
    @Override
    public void pdaLocNormalIn(List<LocNormal> list) {
        // 平仓入库后更新中间表数据,Fflag_finish改为1,表示平仓入库成功
        if (list.size() > 0) {
            for (Integer i = 0; i < list.size(); i++) {
                if (!Cools.isEmpty(list.get(i).getSupplier())) { // 存在入库单号的才进行erp更新
                    String sql = "update CPICMO set FAuxCommitQty = (FAuxCommitQty + {0,number,#}) where 1=1 and Fnumber = ''{1}'' and FBillNo = ''{2}''";
                    sql = MessageFormat.format(sql, list.get(i).getAnfme(), list.get(i).getMatnr(), list.get(i).getSupplier());
                    if (erpSqlServer.update(sql) > 0) {
                        sql = "select * from CPICMO where 1=1 and Fnumber = ''{0}'' and FBillNo = ''{1}''";
                        sql = MessageFormat.format(sql, list.get(i).getMatnr(), list.get(i).getSupplier());
                        List<CPICMO> select = erpSqlServer.select(sql, CPICMO.class);
                        CPICMO cpicmo = select.get(0);
                        boolean complete = false;
                        if (cpicmo.getFQty() > 0) {
                            if (cpicmo.getFAuxCommitQty() == cpicmo.getFQty()) {
                                complete = true;
                            }
                        } else {
                            if (cpicmo.getFAuxCommitQty() == cpicmo.getFAuxQty()) {
                                complete = true;
                            }
                        }
                        if (complete) {
                            if (!completeCPakIn(list.get(i).getSupplier(), list.get(i).getMatnr())) {
                                log.error("{}平仓入库单标记完成失败", list.get(i).getSupplier());
                            }
                        }
                    }
                }
            }
        }
        baseMapper.pdaLocNormalIn(list);
    }