自动化立体仓库 - WMS系统
LSH
2023-12-16 4d26b26adb0750aaf8920a9b7613be59711577ca
#库龄按批次计算
4个文件已修改
56 ■■■■ 已修改文件
src/main/java/com/zy/asrs/entity/ManLocDetl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocDetlMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ManLocDetlMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/ManLocDetl.java
@@ -199,6 +199,13 @@
    private Date modiTime;
    /**
     * 添加时间
     */
    @ApiModelProperty(value= "生产日期")
    @TableField("produce_time")
    private Date produceTime;
    /**
     * 备注
     */
    @ApiModelProperty(value= "备注")
@@ -329,6 +336,13 @@
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
    }
    public String getProduceTimeTime$(){
        if (Cools.isEmpty(this.produceTime)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.produceTime);
    }
    public String getUpdateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.selectById(this.updateBy);
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -29,6 +29,7 @@
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -968,7 +969,8 @@
        if (Cools.isEmpty(jsonLocNo)){
            return R.error("库位号参数为空!");
        }else if (Cools.isEmpty(ownerId)){
            return R.error("拥有者参数为空!");
//            return R.error("拥有者参数为空!");
            ownerId = 1L;
        }else if (Cools.isEmpty(jsonCode)){
            return R.error("条码参数为空!");
        }else if (Cools.isEmpty(jsonOrigin)){
@@ -1045,6 +1047,12 @@
                // manLocDetl.setOrderNo(waitPakin.getOrderNo());
                manLocDetl.setStockFreeze(1);
                manLocDetl.setOwner(jsonOwner);
                try {
                    Date produceTime = DateUtils.convert(manLocDetl.getBatch(),DateUtils.yyyyMMdd);
                    manLocDetl.setProduceTime(produceTime);
                } catch (Exception e) {
                    manLocDetl.setProduceTime(now);
                }
                if (!manLocDetlService.insert(manLocDetl)){  //数据库插入实体类信息
                    return R.error("物料信息入库失败");
@@ -1063,7 +1071,8 @@
        if (Cools.isEmpty(jsonLocNo)){
            return R.error("库位号参数为空!");
        }else if (Cools.isEmpty(ownerId)){
            return R.error("拥有者参数为空!");
//            return R.error("拥有者参数为空!");
            ownerId = 1L;
        }
        Integer jsonOwner = ownerId.intValue(); //获取拥有者
        Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", jsonLocNo));  //获取对应库位信息
@@ -1117,7 +1126,12 @@
                manLocDetl.setOwner(jsonOwner);
                // manLocDetl.setOrderNo(waitPakin.getOrderNo());
                manLocDetl.setStockFreeze(1);
                try {
                    Date produceTime = DateUtils.convert(jsonOriginDetl.getBatch(),DateUtils.yyyyMMdd);
                    manLocDetl.setProduceTime(produceTime);
                } catch (Exception e) {
                    manLocDetl.setProduceTime(now);
                }
                if (!manLocDetlService.insert(manLocDetl)){  //数据库插入实体类信息
                    return R.error("物料信息入库失败");
                }
src/main/resources/mapper/LocDetlMapper.xml
@@ -693,13 +693,14 @@
        locd.maktx,
        locd.owner,
        locd.batch,
        create_time,
        produce_time as create_time,
        produce_time,
        locd.specs,
        locd.unit,
        inventory_max,
        inventory_min,
        inventory_age_max,
        DATEDIFF( DAY, create_time, GETDATE( ) ) AS [diff_time]
        DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
        FROM
        man_loc_detl locd
        LEFT JOIN (
@@ -717,7 +718,7 @@
        RIGHT JOIN ( SELECT matnr,batch,owner, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr,batch,owner ) aa ON aa.matnr = man_mat.matnr
        ) warn ON locd.matnr = warn.matnr
        WHERE
        DATEDIFF( DAY, create_time, GETDATE( ) ) > inventory_age_max
        DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
        ) t
        WHERE
        1 = 1
@@ -741,13 +742,14 @@
        locd.maktx,
        locd.owner,
        locd.batch,
        create_time,
        produce_time as create_time,
        produce_time,
        locd.specs,
        locd.unit,
        inventory_max,
        inventory_min,
        inventory_age_max,
        DATEDIFF( DAY, create_time, GETDATE( ) ) AS [diff_time]
        DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
        FROM
        man_loc_detl locd
        LEFT JOIN (
@@ -765,7 +767,7 @@
        RIGHT JOIN ( SELECT matnr,batch,owner, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr,batch,owner ) aa ON aa.matnr = man_mat.matnr
        ) warn ON locd.matnr = warn.matnr
        WHERE
        DATEDIFF( DAY, create_time, GETDATE( ) ) > inventory_age_max
        DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
        ) t
        WHERE
        1 = 1
src/main/resources/mapper/ManLocDetlMapper.xml
@@ -29,6 +29,7 @@
        <result column="create_time" property="createTime" />
        <result column="update_by" property="updateBy" />
        <result column="modi_time" property="modiTime" />
        <result column="produce_time" property="produceTime" />
        <result column="memo" property="memo" />
        <result column="owner" property="owner" />
        <result column="payment" property="payment" />
@@ -378,13 +379,14 @@
        locd.maktx,
        locd.owner,
        locd.batch,
        create_time,
        produce_time as create_time,
        produce_time,
        locd.specs,
        locd.unit,
        inventory_max,
        inventory_min,
        inventory_age_max,
        DATEDIFF( DAY, create_time, GETDATE( ) ) AS [diff_time]
        DATEDIFF( DAY, produce_time, GETDATE( ) ) AS [diff_time]
        FROM
        man_loc_detl locd
        LEFT JOIN (
@@ -402,7 +404,7 @@
        RIGHT JOIN ( SELECT matnr,batch,owner, SUM ( anfme ) AS count_anfme FROM man_loc_detl loc GROUP BY matnr,batch,owner ) aa ON aa.matnr = man_mat.matnr
        ) warn ON locd.matnr = warn.matnr
        WHERE
        DATEDIFF( DAY, create_time, GETDATE( ) ) > inventory_age_max
        DATEDIFF( DAY, produce_time, GETDATE( ) ) > inventory_age_max
        OR count_anfme > inventory_max
        OR count_anfme &lt; inventory_min
        ) t