czt
2026-02-08 85305eb814a51fde36b45dc78938ef8e2bc156bd
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DepotService.java
@@ -10,7 +10,9 @@
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@@ -27,6 +29,8 @@
    private DepotMapper depotMapper;
    @Resource
    private RedisCache redisCache;
    @Resource
    private DepotStoreService depotStoreService;
    /**
     * 查询库区下仓库列表
@@ -60,6 +64,7 @@
    /**
     * 根据库存表信息,更新仓库库存
     *
     * @param data
     */
    public void updateByDepotStore(DepotStore data) {
@@ -100,6 +105,50 @@
    }
    /**
     * 更新库存信息
     *
     * @param depot
     */
    public void updateStorageReal(Depot depot) {
        Depot cacheDepot = this.getCacheDepot(depot.getCompanyId(), depot.getId());
        depot.setUpdateBy(ContextUtil.getLoginUserName());
        depot.setUpdateTime(new Date());
        depot.setRemark("【" + ContextUtil.getLoginUserName() + "】于[" + DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss") + "]修改库存:" + cacheDepot.getStorageReal() + "-->" + depot.getStorageReal());
        depotMapper.updateById(depot);
        DepotStore lastData = new DepotStore();
        //主键ID规则:yyyyMMddHHmm_仓库编码
        lastData.setId(DateFormatUtils.format(new Date(), "yyyyMMddHHmm") + "_" + depot.getId() + "_HAND");
        lastData.setCompanyId(depot.getCompanyId());
        lastData.setDeptId(depot.getId());
        lastData.setDepotId(depot.getId());
        lastData.setStorageReal(0.0);
        lastData.setUpdateTime(new Date());
        lastData.setUpdateBy("系统定时统计");
        lastData.setDepotStatus(depot.getDepotStatus());
        lastData.setFoodVariety(depot.getFoodVariety());
        lastData.setFoodLevel(depot.getFoodLevel());
        lastData.setFoodLocation(depot.getFoodLocation());
        lastData.setFoodLocationId(depot.getFoodLocationId());
        lastData.setFoodType(depot.getFoodType());
        lastData.setFoodYear(depot.getFoodYear());
        lastData.setStorageReal(depot.getStorageReal());
        lastData.setCreateTime(new Date()); //设置为最新时间,其他系统可以通过此时间查询数据是否有更新修改,同步到省平台接口。
        lastData.setCreateBy(ContextUtil.getLoginUserName());
        lastData.setRemark("【" + ContextUtil.getLoginUserName() + "】于[" + DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss") + "]修改库存为:" + depot.getStorageReal());
        depotStoreService.updateAndSave(lastData);
        flushCache(depot.getCompanyId());
    }
    /**
     * 获取主键ID
     *
     * @param deptId