自动化立体仓库 - WMS系统
pang.jiabao
17 小时以前 9aff2228c647b65bd2aa7aa9186445fb7b5d2219
出入库日志记录是否分包
12个文件已修改
77 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MobileController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/PlaController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/NodeServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/utils/SaasUtils.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/controller/SaasLogController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/entity/SaasLog.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/SaasLogMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/saasLog/saasLog.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/saasLog/saasLog.html 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -611,7 +611,7 @@
            plaService.updateById(pla);
            SaasUtils.insertLog(2, sourceLocNo, pla.getBrand(), pla.getWeightAnfme(), getUser().getUsername(),
                    locNo, pla.getBatch(), pla.getPackageNo(), pla.getOwner(), pla.getWorkshop(), null,"移库前:"+pla.getWeightAnfme());
                    locNo, pla.getBatch(), pla.getPackageNo(), pla.getOwner(), pla.getWorkshop(), null,"移库前:"+pla.getWeightAnfme(),"",0);
        });
src/main/java/com/zy/asrs/controller/PlaController.java
@@ -328,7 +328,7 @@
            pla.setWeightAnfme(0.0);
            plaService.updateById(pla);
            SaasUtils.insertLog(1, pla.getLocNo(), pla.getBrand(), anfme, getUser().getUsername(),
                    null, pla.getBatch(), pla.getPackageNo(), pla.getOwner(), pla.getWorkshop(), null,"全部出库" + anfme);
                    null, pla.getBatch(), pla.getPackageNo(), pla.getOwner(), pla.getWorkshop(), null,"全部出库" + anfme,pla.getMemo(),Cools.isEmpty(pla.getProOrderNo()) ? 1 : 0);
        });
        return R.ok();
src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java
@@ -164,7 +164,7 @@
            manLocDetl.setUpdateBy(userId);
            manLocDetl.setModiTime(now);
            SaasUtils.insertLog(3,manLocDetl.getLocNo(), manLocDetl.getMatnr(),manLocDetl.getAnfme(),user.getUsername(),
                    null,null,null,null, null,null,"库存调整为"+locDetlAdjust.getCount());
                    null,null,null,null, null,null,"库存调整为"+locDetlAdjust.getCount(),"",0);
            this.baseMapper.insert(manLocDetl);
        }
    }
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -666,7 +666,7 @@
            orderService.checkComplete(order.getOrderNo());
            SaasUtils.insertLog(0,jsonLocNo,jsonOrderDetl.getMatnr(), jsonOrderDetl.getAnfme(),user.getUsername(),
        null,null,null,null,null,null,"订单上架:"+jsonOrderDetl.getAnfme());
        null,null,null,null,null,null,"订单上架:"+jsonOrderDetl.getAnfme(),"",0);
        }
@@ -808,7 +808,7 @@
                }
            }
            SaasUtils.insertLog(1,jsonLocNo,jsonOrderDetl.getMatnr(), jsonOrderDetl.getAnfme(),user.getUsername(),
                    null,null,null,null,null,null,"订单下架:" +jsonOrderDetl.getAnfme() );
                    null,null,null,null,null,null,"订单下架:" +jsonOrderDetl.getAnfme(),"",0);
        }
        return R.ok("下架完成");
@@ -1233,7 +1233,7 @@
        plaService.updateById(pla);
        SaasUtils.insertLog(0,locNo,pla.getBrand(),pla.getWeightAnfme(),user.getUsername(),
                null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla入库:" + pla.getWeightAnfme());
                null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla入库:" + pla.getWeightAnfme(),pla.getMemo(),Cools.isEmpty(pla.getProOrderNo()) ? 1 : 0);
    }
    @Override
@@ -1288,7 +1288,7 @@
        log.info("pla出库v1,订单出库,更新为待出库或则全部出库,pla:{},anfme:{},是否替换:{}",pla,anfme,isReplace);
        plaService.updateById(pla);
        SaasUtils.insertLog(1,locNo,pla.getBrand(),anfme,null,null,
                pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla出库前:" + beforeWeightAnfme+",出库:" + anfme);
                pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla出库前:" + beforeWeightAnfme+",出库:" + anfme,pla.getMemo(),Cools.isEmpty(pla.getProOrderNo()) ? 1 : 0);
        //更新订单明细
        Order order = orderService.selectByNo(orderNo);
@@ -1328,7 +1328,7 @@
        plaService.updateById(pla);
        SaasUtils.insertLog(1,pla.getLocNo(),pla.getBrand(),anfme,null,null,
                pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla手动出库前:" + beforeWeightAnfme +",出库:" + anfme);
                pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"pla手动出库前:" + beforeWeightAnfme +",出库:" + anfme,pla.getMemo(),Cools.isEmpty(pla.getProOrderNo()) ? 1 : 0);
    }
src/main/java/com/zy/asrs/service/impl/NodeServiceImpl.java
@@ -124,7 +124,7 @@
                manLocDetl.setStatus(1);
                manLocDetl.setPayment(1);
                SaasUtils.insertLog(0,manLocDetl.getLocNo(),manLocDetl.getMatnr(), manLocDetl.getAnfme(),user.getUsername(),
                        null,null,null,null,null,null,"入库"+ dto.getCount());
                        null,null,null,null,null,null,"入库"+ dto.getCount(),"",0);
                manLocDetlService.insert(manLocDetl);
            }else {
//                check.setAnfme(dto.getCount() + check.getAnfme());
@@ -166,7 +166,7 @@
                    return R.error("物料:"+ param.getMatnr() + " 在库位中数量不足");
                } else if (manLocDetl.getAnfme() - param.getCount() == 0) {
                    SaasUtils.insertLog(1,manLocDetl.getLocNo(), manLocDetl.getMatnr(),param.getCount(),user.getUsername(),
                            null,null,null,null,null,null,"出库前剩余:" + manLocDetl.getAnfme()+",出库:"+param.getCount());
                            null,null,null,null,null,null,"出库前剩余:" + manLocDetl.getAnfme()+",出库:"+param.getCount(),"",0);
                    manLocDetlService.delete(new EntityWrapper<ManLocDetl>()
                            .eq("loc_no",node.getUuid())
                            .eq("matnr",param.getMatnr()));
@@ -178,7 +178,7 @@
                            .eq("loc_no",node.getUuid())
                            .eq("matnr",param.getMatnr()));
                    SaasUtils.insertLog(1,manLocDetl.getLocNo(), manLocDetl.getMatnr(),param.getCount(),user.getUsername(),
                            null,null,null,null,null,null,"出库前剩余:"+beforeWeightAnfme+",出库:"+param.getCount());
                            null,null,null,null,null,null,"出库前剩余:"+beforeWeightAnfme+",出库:"+param.getCount(),"",0);
                }
            }
        }
@@ -209,7 +209,7 @@
                source.setNodeId(targetNode.getId());
                SaasUtils.insertLog(2,source.getLocNo(), source.getMatnr(), source.getAnfme(),user.getUsername(),
                        null,null,null,null,null,null,"移库数量:" + source.getAnfme());
                        null,null,null,null,null,null,"移库数量:" + source.getAnfme(),"",0);
                manLocDetlService.insert(source);
            }else {
//                check.setAnfme(check.getAnfme() + source.getAnfme());
src/main/java/com/zy/asrs/service/impl/PlaServiceImpl.java
@@ -147,7 +147,7 @@
            this.updateById(pla);
            SaasUtils.insertLog(4,pla.getLocNo(),pla.getBrand(),plaQty.getOrderWeight(),user.getUsername(),
                    null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"退回前:"+beforeWeightAnfme+",退回后:"+pla.getWeightAnfme());
                    null,pla.getBatch(),pla.getPackageNo(),pla.getOwner(),pla.getWorkshop(),null,"退回前:"+beforeWeightAnfme+",退回后:"+pla.getWeightAnfme(),pla.getMemo(),Cools.isEmpty(pla.getProOrderNo()) ? 1 : 0);
        });
    }
src/main/java/com/zy/asrs/utils/SaasUtils.java
@@ -22,7 +22,8 @@
     * @param docType 单据类型
     */
    public static void insertLog(Integer type, String locNo, String matnr,Double anfme,
                                 String user,String targetLocNo,String batch,Integer packageNo,String owner,String workshop, Long docType,String memo){
                                 String user,String targetLocNo,String batch,Integer packageNo,String owner,String workshop, Long docType,String memo
                                 ,String memo2, Integer subcontracting){
        SaasLogService bean = SpringUtils.getBean(SaasLogService.class);
        SaasLog saasLog = new SaasLog();
        saasLog.setType(type);
@@ -39,6 +40,8 @@
        saasLog.setWorkshop(workshop);
        saasLog.setDocType(docType);
        saasLog.setMemo(memo);
        saasLog.setMemo2(memo2);
        saasLog.setSubcontracting(subcontracting);
        bean.insert(saasLog);
    }
}
src/main/java/com/zy/system/controller/SaasLogController.java
@@ -178,7 +178,11 @@
                String[] dates = val.split(RANGE_TIME_LINK);
                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
            } else {
            } else if (entry.getKey().contains("Min")) {
                wrapper.ge(entry.getKey().substring(0, entry.getKey().length() - 3), val);
            } else if (entry.getKey().contains("Max")) {
                wrapper.le(entry.getKey().substring(0, entry.getKey().length() - 3), val);
            } else{
                wrapper.like(entry.getKey(), val);
            }
        }
src/main/java/com/zy/system/entity/SaasLog.java
@@ -80,6 +80,20 @@
    @TableField("memo")
    private String memo;
    @TableField("memo2")
    private String memo2;
    // 是否分包,生产订单号为空则为分包 0.正常,1.分包
    @TableField("subcontracting")
    private Integer subcontracting;
    public String getSubcontracting$() {
        return Cools.isEmpty(this.subcontracting) ? ""
                : this.subcontracting == 0 ? "正常"
                : this.subcontracting == 1 ? "分包"
                : String.valueOf(this.subcontracting);
    }
    public SaasLog() {}
    public SaasLog(Long id,Integer type,String locNo,String matnr,Date ioTime,Long createBy) {
src/main/resources/mapper/SaasLogMapper.xml
@@ -12,7 +12,8 @@
        <result column="create_by" property="createBy" />
        <result column="create_by_name" property="createByName" />
        <result column="memo" property="memo" />
        <result column="memo2" property="memo2" />
        <result column="subcontracting" property="subcontracting" />
    </resultMap>
    <select id="selectListSummary" resultType="com.zy.system.entity.SaasLog">
        select
src/main/webapp/static/js/saasLog/saasLog.js
@@ -45,6 +45,8 @@
            ,{field: 'ioTime$', align: 'center',title: '操作时间'}
            ,{field: 'createBy', align: 'center',title: '', hide:true}
            ,{field: 'memo', align: 'center',title: '备注', hide:true}
            ,{field: 'subcontracting$', align: 'center',title: '分包否'}
            ,{field: 'memo2', align: 'center',title: '备注2'}
        ]],
        request: {
src/main/webapp/views/saasLog/saasLog.html
@@ -48,9 +48,19 @@
                            <input class="layui-input" type="text" name="batch" placeholder="批号" autocomplete="off">
                        </div>
                    </div>
<!--                    <div class="layui-inline">-->
<!--                        <div class="layui-input-inline">-->
<!--                            <input class="layui-input" type="text" name="package_no" placeholder="包号" autocomplete="off">-->
<!--                        </div>-->
<!--                    </div>-->
                    <div class="layui-inline">
                        <div class="layui-input-inline">
                            <input class="layui-input" type="text" name="package_no" placeholder="包号" autocomplete="off">
                            <input class="layui-input" type="text" name="package_noMin" placeholder="最小包号" autocomplete="off">
                        </div>
                    </div>
                    <div class="layui-inline">
                        <div class="layui-input-inline">
                            <input class="layui-input" type="text" name="package_noMax" placeholder="最大包号" autocomplete="off">
                        </div>
                    </div>
                    <div class="layui-inline" style="width: 300px">
@@ -61,6 +71,15 @@
                            <input type="text" class="layui-input" name="io_time" id="ID-laydate-range-datetime" placeholder="起始时间 - 终止时间">
                        </div>
                    </div>
                    <div class="layui-inline">
                        <div class="layui-input-inline">
                            <select name="subcontracting">
                                <option value="">分包否</option>
                                <option value="0">正常</option>
                                <option value="1">分包</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline">&emsp;
                        <button class="layui-btn icon-btn" lay-filter="search" lay-submit>
                            <i class="layui-icon">&#xe615;</i>搜索