Browse Source

企业库存信息开发完成

zjl 7 years ago
parent
commit
bdc60b1a62
19 changed files with 749 additions and 9 deletions
  1. 44 0
      src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatCusData.java
  2. 71 0
      src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatDataConversion.java
  3. 102 0
      src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatRecordTime.java
  4. 57 0
      src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatWmsData.java
  5. 72 0
      src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsSeatBiz.java
  6. 1 1
      src/main/java/com/emato/cus/supervise/biz/acqInventoryInfo/AcqInventoryInfoOmsData.java
  7. 2 2
      src/main/java/com/emato/cus/supervise/constant/EmtRecordTimeEnum.java
  8. 238 0
      src/main/java/com/emato/cus/supervise/domain/WmsAcqGoodsOnSeat.java
  9. 17 0
      src/main/java/com/emato/cus/supervise/mapper/WmsAcqGoodsSeatMapper.java
  10. 1 2
      src/main/java/com/emato/cus/supervise/schedule/AcqGoodsMoveSchedule.java
  11. 49 0
      src/main/java/com/emato/cus/supervise/schedule/AcqGoodsSeatSchedule.java
  12. 2 1
      src/main/java/com/emato/cus/supervise/schedule/AcqInventoryInfoSchedule.java
  13. 1 1
      src/main/java/com/emato/cus/supervise/service/oms/OmsAcqInventoryInfoService.java
  14. 2 2
      src/main/java/com/emato/cus/supervise/service/oms/impl/OmsAcqInventoryInfoServiceImpl.java
  15. 20 0
      src/main/java/com/emato/cus/supervise/service/wms/WmsAcqGoodsOnSeatService.java
  16. 29 0
      src/main/java/com/emato/cus/supervise/service/wms/impl/WmsAcqGoodsOnSeatServiceImpl.java
  17. 36 0
      src/main/resources/mybatis/mapper/wms-acq-goods-on-seat.xml
  18. 1 0
      src/main/resources/mybatis/mybatis-config.xml
  19. 4 0
      src/sql/emt-record-time-2.0.sql

+ 44 - 0
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatCusData.java

@@ -0,0 +1,44 @@
+package com.emato.cus.supervise.biz.acqGoodsSeat;
+
+import com.emato.cus.supervise.biz.CusData;
+import com.emato.cus.supervise.constant.EmtRecordTimeEnum;
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import com.emato.cus.supervise.domainCus.CusAcqGoodsSeat06;
+import com.emato.cus.supervise.service.cus.CusAcqGoodsSeatService06;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * 库位货物数据 业务 CUS
+ * @author Scott Chen
+ * @version 1.0
+ * 2017-10-31 12:38
+ */
+@Component
+public class AcqGoodsOnSeatCusData implements CusData {
+    private static final Logger logger = LoggerFactory.getLogger(AcqGoodsOnSeatCusData.class);
+
+    @Autowired
+    private CusAcqGoodsSeatService06 cusAcqGoodsSeatService06;
+
+    private static final String DATA_TYPE_INFO = "[" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode() + "]" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getName();
+
+
+    @Override
+    public int insertCus(List<?> list) {
+        logger.info("---------- 库位货物数据::写入本次监控数据开始 --------------------");
+
+        List<CusAcqGoodsSeat06> cusList = (List<CusAcqGoodsSeat06>) list;
+
+        int result = cusAcqGoodsSeatService06.addCusAcqGoodsSeat06(cusList);
+
+        logger.info("---【" + DATA_TYPE_INFO + "】写入监控数据:{} 条", result);
+
+        logger.info("---------- 库位货物数据::写入本次监控数据结束 --------------------");
+        return result;
+    }
+}

+ 71 - 0
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatDataConversion.java

@@ -0,0 +1,71 @@
+package com.emato.cus.supervise.biz.acqGoodsSeat;
+
+import com.emato.cus.supervise.biz.DataConversion;
+import com.emato.cus.supervise.constant.Dict;
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import com.emato.cus.supervise.domainCus.CusAcqGoodsSeat06;
+import com.google.common.collect.Lists;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:55
+ */
+@Component
+public class AcqGoodsOnSeatDataConversion implements DataConversion{
+
+    private final static Logger logger = LoggerFactory.getLogger(AcqGoodsOnSeatDataConversion.class);
+
+    /**
+     * 外部数据转换
+     *
+     * @param params
+     * @return
+     */
+    @Override
+    public List conversion(Map params) {
+        logger.info("开始转换oms,wms 组装cus数据===========================");
+
+        List<WmsAcqGoodsOnSeat> wmsList = (List<WmsAcqGoodsOnSeat>) params.get("wmsList");
+
+        List<CusAcqGoodsSeat06> cusAcqGoodsSeat06List = Lists.newArrayList();
+
+        for (int i = 0; i < wmsList.size(); i++) {
+            WmsAcqGoodsOnSeat wmsAcqGoodsOnSeat = wmsList.get(i);
+            CusAcqGoodsSeat06 cusAcqGoodsSeat06 = new CusAcqGoodsSeat06();
+            cusAcqGoodsSeat06.setId(wmsAcqGoodsOnSeat.getId());
+            cusAcqGoodsSeat06.setSeatNo(wmsAcqGoodsOnSeat.getSeatNo());
+            cusAcqGoodsSeat06.setGoodsName(wmsAcqGoodsOnSeat.getGoodsName());
+            cusAcqGoodsSeat06.setCodeTs(wmsAcqGoodsOnSeat.getCodeTs());
+            cusAcqGoodsSeat06.setFormNoDec(wmsAcqGoodsOnSeat.getFormNoDec());
+            cusAcqGoodsSeat06.setFormNo(wmsAcqGoodsOnSeat.getFormNo());
+            cusAcqGoodsSeat06.setSkuNo(wmsAcqGoodsOnSeat.getSkuNo());
+            cusAcqGoodsSeat06.setGoodsId(wmsAcqGoodsOnSeat.getGoodsId());
+            cusAcqGoodsSeat06.setgUnit(wmsAcqGoodsOnSeat.getgUnit());
+            cusAcqGoodsSeat06.setgQty(wmsAcqGoodsOnSeat.getgQty());
+            cusAcqGoodsSeat06.setLegalUnit(wmsAcqGoodsOnSeat.getLegalUnit());
+            cusAcqGoodsSeat06.setLegalQty(wmsAcqGoodsOnSeat.getLegalQty());
+            cusAcqGoodsSeat06.setGoodsModel(wmsAcqGoodsOnSeat.getGoodsModel());
+            cusAcqGoodsSeat06.setLocalEmsNo(Dict.localEmsNo);
+            //TODO  下面二个查询oms系统
+            cusAcqGoodsSeat06.setOwnerCode(wmsAcqGoodsOnSeat.getOwnerCode());
+            cusAcqGoodsSeat06.setOwnerName(wmsAcqGoodsOnSeat.getOwnerName());
+
+            cusAcqGoodsSeat06.setStoreCompanyName(Dict.storeCompanyName);
+            cusAcqGoodsSeat06.setStoreUscCode(Dict.storeUscCode);
+            cusAcqGoodsSeat06.setStoreCustomsCode(Dict.storeCustomsCode);
+            cusAcqGoodsSeat06.setStoreCode(Dict.storeCode);
+            cusAcqGoodsSeat06.setCreateTime(LocalDateTime.now());
+            cusAcqGoodsSeat06List.add(cusAcqGoodsSeat06);
+        }
+        logger.info("转换oms,wms 组装cus数据结束===========================");
+        return cusAcqGoodsSeat06List;
+    }
+}

+ 102 - 0
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatRecordTime.java

@@ -0,0 +1,102 @@
+package com.emato.cus.supervise.biz.acqGoodsSeat;
+
+import com.emato.cus.supervise.biz.RecordTime;
+import com.emato.cus.supervise.constant.CommonConstant;
+import com.emato.cus.supervise.constant.EmtRecordTimeEnum;
+import com.emato.cus.supervise.domainCus.EmtRecordTime;
+import com.emato.cus.supervise.service.cus.EmtRecordTimeService;
+import com.emato.cus.supervise.util.LocalDateTimeUtils;
+import com.google.common.collect.ImmutableMap;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 库位货物数据 业务 扫描时间
+ *
+ * @author Scott Chen
+ * @version 1.0
+ * 2017-10-31 12:18
+ */
+@Component
+public class AcqGoodsOnSeatRecordTime implements RecordTime {
+    private static final Logger logger = LoggerFactory.getLogger(AcqGoodsOnSeatRecordTime.class);
+
+    @Autowired
+    private EmtRecordTimeService emtRecordTimeService;
+
+    private static final String DATA_TYPE_INFO = "[" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode() + "]" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getName();
+
+    /**
+     * 获取扫描时间
+     * @return
+     */
+    @Override
+    public String getEmtRecordTime() {
+        logger.info("---------- 库位货物数据::获取上次扫描时间开始 --------------------");
+
+        //根据数据类型, 取扫描时间
+        Map<String, Object> param = ImmutableMap.of("dataType", EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode());
+
+        List<EmtRecordTime> list = emtRecordTimeService.selectEmtRecordTime(param);
+        if (list == null || list.size() == 0) {
+            String err = "---【" + DATA_TYPE_INFO + "】取扫描时间数据为空.";
+            logger.error(err);
+            return null;
+        }
+
+        String oldLastTime = list.get(0).getLastTime();
+        String oldThisTime = list.get(0).getThisTime();
+
+        logger.info("---【" + DATA_TYPE_INFO + "】任务上次扫描时间:{}", oldLastTime);
+        logger.info("---【" + DATA_TYPE_INFO + "】任务本次扫描时间:{}", oldThisTime);
+
+        logger.info("---------- 库位货物数据::获取上次扫描时间结束 --------------------");
+        return oldThisTime;
+    }
+
+    /**
+     * 更新记录时间
+     *
+     * @param thisTime 当前时间作为下次扫描时间
+     * @param lastTime 本次扫描时间成为上次扫描时间
+     */
+    @Override
+    public boolean updateWmsRecordTime(String thisTime, String lastTime) {
+        logger.info("---------- 库位货物数据::更新扫描时间开始 --------------------");
+
+        if (StringUtils.isBlank(thisTime)) {
+            thisTime = LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN);
+        }
+        if (StringUtils.isBlank(lastTime)) {
+            logger.info("---【" + DATA_TYPE_INFO + "】本次更新时间为空, 不能写入扫描时间表, 更新扫描时间提前结束.");
+            return false;
+        }
+
+        logger.info("---【" + DATA_TYPE_INFO + "】本次扫描时间为:{}, 下次扫描时间:{}.", lastTime, thisTime);
+
+        ImmutableMap.Builder builder = new ImmutableMap.Builder();
+        builder.put("dataType", EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode());
+        builder.put("lastTime", lastTime);
+        builder.put("thisTime", thisTime);
+        builder.put("moderSn", CommonConstant.moderSn);
+        builder.put("modTime", LocalDateTime.now());
+
+        int res = emtRecordTimeService.updateEmtRecordTime(builder.build());
+        String err = "---【" + DATA_TYPE_INFO + "】更新扫描时间'{" + (res == 1 ? "成功" : "失败, 结束本次扫描!!!") + "}'.";
+        logger.info(err);
+        if (res != 1) {
+            return false;
+        }
+
+        logger.info("---------- 库位货物数据::更新扫描时间结束 --------------------");
+
+        return res == 1;
+    }
+}

+ 57 - 0
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatWmsData.java

@@ -0,0 +1,57 @@
+package com.emato.cus.supervise.biz.acqGoodsSeat;
+
+import com.emato.cus.supervise.biz.WmsData;
+import com.emato.cus.supervise.constant.EmtRecordTimeEnum;
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import com.emato.cus.supervise.service.wms.WmsAcqGoodsOnSeatService;
+import com.google.common.collect.ImmutableMap;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * 库位货物数据 业务 WMS
+ * @author Scott Chen
+ * @version 1.0
+ * 2017-10-31 12:24
+ */
+@Component
+public class AcqGoodsOnSeatWmsData implements WmsData {
+    private static final Logger logger = LoggerFactory.getLogger(AcqGoodsOnSeatWmsData.class);
+
+    @Autowired
+    private WmsAcqGoodsOnSeatService wmsAcqGoodsOnSeatService;
+
+    private static final String DATA_TYPE_INFO = "[" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode() + "]" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getName();
+
+
+    @Override
+    public List getWmsData(String thisTime) {
+        logger.info("---------- 库位货物数据::获取本次监控数据开始 --------------------");
+
+        if (StringUtils.isBlank(thisTime)) {
+            String err = "---【" + DATA_TYPE_INFO + "】本次扫描时间为空.";
+            logger.error(err);
+            return Collections.EMPTY_LIST;
+        }
+
+        ImmutableMap param = ImmutableMap.of("thisTime", thisTime);
+        List<WmsAcqGoodsOnSeat> resultList = wmsAcqGoodsOnSeatService.getWmsAcqGoodsSeat(param);
+
+        if (resultList == null || resultList.size() == 0) {
+            String err = "---【" + DATA_TYPE_INFO + "】获取本次监控数据为空.";
+            logger.error(err);
+            return Collections.EMPTY_LIST;
+        }
+        logger.info("---【" + DATA_TYPE_INFO + "】获取本次监控数据{}条.", resultList.size());
+
+        logger.info("---------- 库位货物数据::获取本次监控数据结束 --------------------");
+
+        return resultList;
+    }
+}

+ 72 - 0
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsSeatBiz.java

@@ -0,0 +1,72 @@
+package com.emato.cus.supervise.biz.acqGoodsSeat;
+
+import com.emato.cus.supervise.biz.CusWmsTask;
+import com.emato.cus.supervise.constant.EmtRecordTimeEnum;
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import com.emato.cus.supervise.util.LocalDateTimeUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * 库位货物数据 业务
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:21
+ */
+@Component
+public class AcqGoodsSeatBiz implements CusWmsTask {
+    private static final Logger logger = LoggerFactory.getLogger(AcqGoodsSeatBiz.class);
+
+    @Autowired
+    private AcqGoodsOnSeatRecordTime acqGoodsOnSeatRecordTime;
+
+    @Autowired
+    private AcqGoodsOnSeatWmsData acqGoodsOnSeatWmsData;
+
+    @Autowired
+    private AcqGoodsOnSeatCusData acqGoodsOnSeatCusData;
+
+    private static final String DATA_TYPE_INFO = "[" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getCode() + "]" + EmtRecordTimeEnum.ACQ_GOODS_ON_SEAT.getName();
+
+
+    /**
+     * 任务入口
+     */
+    @Override
+    public void task() {
+
+        // 获取扫描时间
+        String oldThisTime = acqGoodsOnSeatRecordTime.getEmtRecordTime();
+        if (StringUtils.isBlank(oldThisTime)) {
+            logger.info("--- 【" + DATA_TYPE_INFO + "】未获取到本次扫描时间, 本次扫描提前结束!!!");
+            //下次扫描时间
+            acqGoodsOnSeatRecordTime.updateWmsRecordTime(LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN),
+                    LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN));
+            return;
+
+        }
+
+        // 扫描WMS 数据
+        List<WmsAcqGoodsOnSeat> wmsList = acqGoodsOnSeatWmsData.getWmsData(oldThisTime);
+        if (wmsList == null || wmsList.size() == 0) {
+            logger.info("--- 【" + DATA_TYPE_INFO + "】获取到本次扫描数据为空, 不执行写数据操作, 本次扫描提前结束!!!");
+            //下次扫描时间
+            acqGoodsOnSeatRecordTime.updateWmsRecordTime(LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN),
+                    LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN));
+            return;
+        }
+
+        // 写CUS 数据
+        int res = acqGoodsOnSeatCusData.insertCus(wmsList);
+
+        // 更新扫描时间
+        boolean bl = acqGoodsOnSeatRecordTime.updateWmsRecordTime(LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN),
+                oldThisTime);
+
+    }
+}

+ 1 - 1
src/main/java/com/emato/cus/supervise/biz/acqInventoryInfo/AcqInventoryInfoOmsData.java

@@ -3,7 +3,7 @@ package com.emato.cus.supervise.biz.acqInventoryInfo;
 import com.emato.cus.supervise.biz.OmsData;
 import com.emato.cus.supervise.constant.EmtRecordTimeEnum;
 import com.emato.cus.supervise.domainOms.OmsAcqInventoryInfo;
-import com.emato.cus.supervise.service.wms.impl.OmsAcqInventoryInfoServiceImpl;
+import com.emato.cus.supervise.service.oms.impl.OmsAcqInventoryInfoServiceImpl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;

+ 2 - 2
src/main/java/com/emato/cus/supervise/constant/EmtRecordTimeEnum.java

@@ -10,8 +10,8 @@ public enum EmtRecordTimeEnum {
     ACQ_SHELF_LOAD("ACQ_SHELF_LOAD", "企业货物上下架信息:上架"),
     ACQ_SHELF_LOAD_DOWN("ACQ_SHELF_LOAD_DOWN", "企业货物上下架信息:下架"),
     ACQ_GOODS_MOVE_UP("ACQ_GOODS_MOVE_UP", "企业货物在仓库的移动信息:上架"),
-    ACQ_GOODS_MOVE_DOWN("ACQ_GOODS_MOVE_DOWN", "企业货物在仓库的移动信息:下架")
-    ;
+    ACQ_GOODS_MOVE_DOWN("ACQ_GOODS_MOVE_DOWN", "企业货物在仓库的移动信息:下架"),
+    ACQ_GOODS_ON_SEAT("ACQ_GOODS_ON_SEAT", "库位上的货物信息");
 
     private String code;
     private String name;

+ 238 - 0
src/main/java/com/emato/cus/supervise/domain/WmsAcqGoodsOnSeat.java

@@ -0,0 +1,238 @@
+package com.emato.cus.supervise.domain;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 库位货物数据 WMS
+ *
+ * @author Scott Chen
+ * @version 1.0
+ * 2017-10-31 13:41
+ */
+public class WmsAcqGoodsOnSeat implements Serializable {
+    private static final long serialVersionUID = -6181417718340745214L;
+
+    private String id;
+    private String seatNo;
+
+    private String goodsName;
+    private String codeTs;
+    private String formNoDec;
+    private String formNo;
+
+    private String skuNo;
+    private String goodsId;
+
+    private String gUnit;
+    private Double gQty;
+    private String legalUnit;
+    private Double legalQty;
+
+    private String goodsModel;
+    private String localEmsNo;
+    private String ownerCode;
+    private String ownerName;
+
+    private String storeCompanyName;
+    private String storeUscCode;
+    private String storeCustomsCode;
+    private String storeCode;
+
+    private String createrSn;
+    private LocalDateTime createTime;
+    private String moderSn;
+    private LocalDateTime modTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getSeatNo() {
+        return seatNo;
+    }
+
+    public void setSeatNo(String seatNo) {
+        this.seatNo = seatNo;
+    }
+
+    public String getGoodsName() {
+        return goodsName;
+    }
+
+    public void setGoodsName(String goodsName) {
+        this.goodsName = goodsName;
+    }
+
+    public String getCodeTs() {
+        return codeTs;
+    }
+
+    public void setCodeTs(String codeTs) {
+        this.codeTs = codeTs;
+    }
+
+    public String getFormNoDec() {
+        return formNoDec;
+    }
+
+    public void setFormNoDec(String formNoDec) {
+        this.formNoDec = formNoDec;
+    }
+
+    public String getFormNo() {
+        return formNo;
+    }
+
+    public void setFormNo(String formNo) {
+        this.formNo = formNo;
+    }
+
+    public String getSkuNo() {
+        return skuNo;
+    }
+
+    public void setSkuNo(String skuNo) {
+        this.skuNo = skuNo;
+    }
+
+    public String getGoodsId() {
+        return goodsId;
+    }
+
+    public void setGoodsId(String goodsId) {
+        this.goodsId = goodsId;
+    }
+
+    public String getgUnit() {
+        return gUnit;
+    }
+
+    public void setgUnit(String gUnit) {
+        this.gUnit = gUnit;
+    }
+
+    public Double getgQty() {
+        return gQty;
+    }
+
+    public void setgQty(Double gQty) {
+        this.gQty = gQty;
+    }
+
+    public String getLegalUnit() {
+        return legalUnit;
+    }
+
+    public void setLegalUnit(String legalUnit) {
+        this.legalUnit = legalUnit;
+    }
+
+    public Double getLegalQty() {
+        return legalQty;
+    }
+
+    public void setLegalQty(Double legalQty) {
+        this.legalQty = legalQty;
+    }
+
+    public String getGoodsModel() {
+        return goodsModel;
+    }
+
+    public void setGoodsModel(String goodsModel) {
+        this.goodsModel = goodsModel;
+    }
+
+    public String getLocalEmsNo() {
+        return localEmsNo;
+    }
+
+    public void setLocalEmsNo(String localEmsNo) {
+        this.localEmsNo = localEmsNo;
+    }
+
+    public String getOwnerCode() {
+        return ownerCode;
+    }
+
+    public void setOwnerCode(String ownerCode) {
+        this.ownerCode = ownerCode;
+    }
+
+    public String getOwnerName() {
+        return ownerName;
+    }
+
+    public void setOwnerName(String ownerName) {
+        this.ownerName = ownerName;
+    }
+
+    public String getStoreCompanyName() {
+        return storeCompanyName;
+    }
+
+    public void setStoreCompanyName(String storeCompanyName) {
+        this.storeCompanyName = storeCompanyName;
+    }
+
+    public String getStoreUscCode() {
+        return storeUscCode;
+    }
+
+    public void setStoreUscCode(String storeUscCode) {
+        this.storeUscCode = storeUscCode;
+    }
+
+    public String getStoreCustomsCode() {
+        return storeCustomsCode;
+    }
+
+    public void setStoreCustomsCode(String storeCustomsCode) {
+        this.storeCustomsCode = storeCustomsCode;
+    }
+
+    public String getStoreCode() {
+        return storeCode;
+    }
+
+    public void setStoreCode(String storeCode) {
+        this.storeCode = storeCode;
+    }
+
+    public String getCreaterSn() {
+        return createrSn;
+    }
+
+    public void setCreaterSn(String createrSn) {
+        this.createrSn = createrSn;
+    }
+
+    public LocalDateTime getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(LocalDateTime createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getModerSn() {
+        return moderSn;
+    }
+
+    public void setModerSn(String moderSn) {
+        this.moderSn = moderSn;
+    }
+
+    public LocalDateTime getModTime() {
+        return modTime;
+    }
+
+    public void setModTime(LocalDateTime modTime) {
+        this.modTime = modTime;
+    }
+}

+ 17 - 0
src/main/java/com/emato/cus/supervise/mapper/WmsAcqGoodsSeatMapper.java

@@ -0,0 +1,17 @@
+package com.emato.cus.supervise.mapper;
+
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:41
+ */
+@Repository
+public interface WmsAcqGoodsSeatMapper {
+    List<WmsAcqGoodsOnSeat> getWmsAcqGoodsSeat(Map<String, Object> param);
+}

+ 1 - 2
src/main/java/com/emato/cus/supervise/schedule/AcqGoodsMoveSchedule.java

@@ -29,8 +29,7 @@ public class AcqGoodsMoveSchedule {
      * 货物库位移动数据
      */
     //每月1号开始,每天12,18点执行各1次,共2次
-    //@Scheduled(cron = "0 0 12,18 1/1 * ?")
-    @Scheduled(cron = "0/10 * * * * ? ")
+    @Scheduled(cron = "0 0 12,18 1/1 * ?")
     public void timerUp() {
         logger.info("==================== 货物库位移动数据:上架:监控数据读取开始 ====================");
         String begDateTime = LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN);

+ 49 - 0
src/main/java/com/emato/cus/supervise/schedule/AcqGoodsSeatSchedule.java

@@ -0,0 +1,49 @@
+package com.emato.cus.supervise.schedule;
+
+import com.emato.cus.supervise.biz.acqGoodsSeat.AcqGoodsSeatBiz;
+import com.emato.cus.supervise.util.LocalDateTimeUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+
+/**
+ * 库位货物数据 计划任务
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:18
+ */
+@Configuration
+@EnableScheduling
+public class AcqGoodsSeatSchedule {
+
+    private static final Logger logger = LoggerFactory.getLogger(AcqGoodsSeatSchedule.class);
+
+    @Autowired
+    private AcqGoodsSeatBiz acqGoodsSeatBiz;
+
+
+    /**
+     * 库位货物数据
+     * 每30分钟1次
+     */
+    //每月1号开始,每天10,12,15,18,22点各1次,共5次
+    @Scheduled(cron = "0 0 10,12,15,18,22 1/1 * ?")
+    public void timerUp() {
+        logger.info("==================== 库位货物数据::监控数据读取开始 ====================");
+        String begDateTime = LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN);
+        logger.info("--- 任务开始时间: {}", begDateTime);
+
+        acqGoodsSeatBiz.task();
+
+
+        String endDateTime = LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN);
+        logger.info("--- 任务结束时间: {}", endDateTime);
+        logger.info("==================== 库位货物数据::监控数据读取结束 ====================");
+
+    }
+
+
+}

+ 2 - 1
src/main/java/com/emato/cus/supervise/schedule/AcqInventoryInfoSchedule.java

@@ -28,7 +28,8 @@ public class AcqInventoryInfoSchedule {
      * 货物库存数据
      */
     //每月1号开始,每天12,22点各1次,共2次
-    @Scheduled(cron = "0 0 12,22 1/1 * ?")
+    //@Scheduled(cron = "0 0 12,22 1/1 * ?")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void timer() {
         logger.info("==================== 货物库存数据::监控数据读取开始 ====================");
         String begDateTime = LocalDateTimeUtils.formatNow(LocalDateTimeUtils.DATA_TIME_HYPHEN);

+ 1 - 1
src/main/java/com/emato/cus/supervise/service/wms/OmsAcqInventoryInfoService.java → src/main/java/com/emato/cus/supervise/service/oms/OmsAcqInventoryInfoService.java

@@ -1,4 +1,4 @@
-package com.emato.cus.supervise.service.wms;
+package com.emato.cus.supervise.service.oms;
 
 import com.emato.cus.supervise.domainOms.OmsAcqInventoryInfo;
 

+ 2 - 2
src/main/java/com/emato/cus/supervise/service/wms/impl/OmsAcqInventoryInfoServiceImpl.java → src/main/java/com/emato/cus/supervise/service/oms/impl/OmsAcqInventoryInfoServiceImpl.java

@@ -1,8 +1,8 @@
-package com.emato.cus.supervise.service.wms.impl;
+package com.emato.cus.supervise.service.oms.impl;
 
 import com.emato.cus.supervise.domainOms.OmsAcqInventoryInfo;
 import com.emato.cus.supervise.mapperOms.OmsAcqInventoryInfoMapper;
-import com.emato.cus.supervise.service.wms.OmsAcqInventoryInfoService;
+import com.emato.cus.supervise.service.oms.OmsAcqInventoryInfoService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;

+ 20 - 0
src/main/java/com/emato/cus/supervise/service/wms/WmsAcqGoodsOnSeatService.java

@@ -0,0 +1,20 @@
+package com.emato.cus.supervise.service.wms;
+
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:41
+ */
+public interface WmsAcqGoodsOnSeatService {
+    /**
+     * 库位货物数据
+     * @param param
+     * @return
+     */
+    List<WmsAcqGoodsOnSeat> getWmsAcqGoodsSeat(Map<String, Object> param);
+}

+ 29 - 0
src/main/java/com/emato/cus/supervise/service/wms/impl/WmsAcqGoodsOnSeatServiceImpl.java

@@ -0,0 +1,29 @@
+package com.emato.cus.supervise.service.wms.impl;
+
+import com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat;
+import com.emato.cus.supervise.mapper.WmsAcqGoodsSeatMapper;
+import com.emato.cus.supervise.service.wms.WmsAcqGoodsOnSeatService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zengjunlin
+ * @version 1.0
+ * 2018-02-03 16:42
+ */
+@Service
+public class WmsAcqGoodsOnSeatServiceImpl implements WmsAcqGoodsOnSeatService {
+
+    @Autowired
+    private WmsAcqGoodsSeatMapper wmsAcqGoodsSeatMapper;
+
+    @Override
+    @Transactional(value ="primaryTransactionManager")
+    public List<WmsAcqGoodsOnSeat> getWmsAcqGoodsSeat(Map<String, Object> param) {
+        return wmsAcqGoodsSeatMapper.getWmsAcqGoodsSeat(param);
+    }
+}

+ 36 - 0
src/main/resources/mybatis/mapper/wms-acq-goods-on-seat.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.emato.cus.supervise.mapper.WmsAcqGoodsSeatMapper">
+
+    <!-- 库位上的货品信息 -->
+    <select id="getWmsAcqGoodsSeat" parameterType="java.util.Map"
+            resultType="com.emato.cus.supervise.domain.WmsAcqGoodsOnSeat">
+        SELECT
+        li.locationCode AS seatNo,
+        li.itemName AS goodsName,
+        li.itemCode AS codeTs,
+        li.itemCode AS skuNo,
+        li.itemCode AS goodsId,
+        i.unitDesc AS gUnit,
+        li.onHandQty AS gQty,
+        li.warehouseCode AS storeCode,
+        CONCAT(
+        i.itemSize,
+        '-',
+        i.itemColor,
+        '-',
+        i.itemStyle
+        ) AS goodsModel
+        FROM
+        location_inventory li
+        LEFT JOIN item i ON li.itemCode = i. CODE
+        <where>
+            <if test="thisTime != null">
+                li.created &gt;= #{thisTime}
+            </if>
+        </where>
+    </select>
+
+
+</mapper>

+ 1 - 0
src/main/resources/mybatis/mybatis-config.xml

@@ -8,6 +8,7 @@
         <mapper resource="mybatis/mapper/wms-acq-inventory-info.xml"/>
         <mapper resource="mybatis/mapper/wms-acq-shelf-load.xml"/>
         <mapper resource="mybatis/mapper/wms-acq-goods-move.xml"/>
+        <mapper resource="mybatis/mapper/wms-acq-goods-on-seat.xml"/>
 
     </mappers>
 </configuration>

+ 4 - 0
src/sql/emt-record-time-2.0.sql

@@ -21,3 +21,7 @@ INSERT INTO emt_record_time (data_type, last_time, this_time, creater_sn, create
 INSERT INTO emt_record_time (data_type, last_time, this_time, creater_sn, create_time, moder_sn, mod_time) VALUES (
   'ACQ_GOODS_MOVE_DOWN', '2018-02-02 14:11:30', '2018-02-02 14:11:30', '1', now(), '1', now()
 );
+--库位上的货物信息
+INSERT INTO emt_record_time (data_type, last_time, this_time, creater_sn, create_time, moder_sn, mod_time) VALUES (
+  'ACQ_GOODS_ON_SEAT', '2018-02-02 14:11:30', '2018-02-02 14:11:30', '1', now(), '1', now()
+);