|
@@ -1,14 +1,17 @@
|
|
package com.warewms.service.impl;
|
|
package com.warewms.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
import com.jfinal.kit.Kv;
|
|
import com.jfinal.kit.Kv;
|
|
import com.jfinal.plugin.activerecord.Db;
|
|
import com.jfinal.plugin.activerecord.Db;
|
|
import com.jfinal.plugin.activerecord.Record;
|
|
import com.jfinal.plugin.activerecord.Record;
|
|
import com.jfinal.plugin.activerecord.SqlPara;
|
|
import com.jfinal.plugin.activerecord.SqlPara;
|
|
import com.warewms.common.annotation.JFinalTx;
|
|
import com.warewms.common.annotation.JFinalTx;
|
|
|
|
+import com.warewms.common.exception.RRException;
|
|
import com.warewms.common.utils.RecordUtils;
|
|
import com.warewms.common.utils.RecordUtils;
|
|
import com.warewms.entity.erp.*;
|
|
import com.warewms.entity.erp.*;
|
|
import com.warewms.service.ErpSyncService;
|
|
import com.warewms.service.ErpSyncService;
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -31,7 +34,10 @@ public class ErpSyncServiceImpl implements ErpSyncService {
|
|
SqlPara sqlParaOb = Db.getSqlPara("erp.selectProOb");
|
|
SqlPara sqlParaOb = Db.getSqlPara("erp.selectProOb");
|
|
List<Record> recordObList = Db.find(sqlParaOb);
|
|
List<Record> recordObList = Db.find(sqlParaOb);
|
|
List<ErpProOb> erpProObList = RecordUtils.converModel(recordObList, ErpProOb.class);
|
|
List<ErpProOb> erpProObList = RecordUtils.converModel(recordObList, ErpProOb.class);
|
|
- if (erpProObList != null && erpProObList.size() > 0) {
|
|
|
|
|
|
+ //根据KEY 获取对应的 redis存储的value,存储数据为空进行新的存储
|
|
|
|
+ String getErpProOb = redisTemplate.opsForValue().get("erpProOb");
|
|
|
|
+
|
|
|
|
+ if (erpProObList != null && erpProObList.size() > 0 && StringUtils.isEmpty(getErpProOb)) {
|
|
for (ErpProOb erpProOb : erpProObList) {
|
|
for (ErpProOb erpProOb : erpProObList) {
|
|
Kv param = Kv.create();
|
|
Kv param = Kv.create();
|
|
param.put("ima01", erpProOb.getIma01());
|
|
param.put("ima01", erpProOb.getIma01());
|
|
@@ -44,7 +50,10 @@ public class ErpSyncServiceImpl implements ErpSyncService {
|
|
// 产品类型基础表 ERP_PRO_TYPE
|
|
// 产品类型基础表 ERP_PRO_TYPE
|
|
SqlPara sqlPara = Db.getSqlPara("erp.selectProType");
|
|
SqlPara sqlPara = Db.getSqlPara("erp.selectProType");
|
|
List<Record> recordList = Db.find(sqlPara);
|
|
List<Record> recordList = Db.find(sqlPara);
|
|
- if (recordList != null && recordList.size() > 0) {
|
|
|
|
|
|
+ //根据KEY 获取对应的 redis存储的value,存储数据为空进行新的存储
|
|
|
|
+ String getErpProType = redisTemplate.opsForValue().get("erpProType");
|
|
|
|
+
|
|
|
|
+ if (recordList != null && recordList.size() > 0 && StringUtils.isEmpty(getErpProType)) {
|
|
List<ErpProType> list = new ArrayList<>();
|
|
List<ErpProType> list = new ArrayList<>();
|
|
for (Record record : recordList) {
|
|
for (Record record : recordList) {
|
|
ErpProType proType = new ErpProType();
|
|
ErpProType proType = new ErpProType();
|
|
@@ -64,7 +73,10 @@ public class ErpSyncServiceImpl implements ErpSyncService {
|
|
SqlPara sqlParaBarCode = Db.getSqlPara("erp.selectBarCode");
|
|
SqlPara sqlParaBarCode = Db.getSqlPara("erp.selectBarCode");
|
|
List<Record> recordBarCodeList = Db.find(sqlParaBarCode);
|
|
List<Record> recordBarCodeList = Db.find(sqlParaBarCode);
|
|
List<ErpProBarCode> erpBarCodeList = RecordUtils.converModel(recordBarCodeList, ErpProBarCode.class);
|
|
List<ErpProBarCode> erpBarCodeList = RecordUtils.converModel(recordBarCodeList, ErpProBarCode.class);
|
|
- if (erpBarCodeList != null && erpBarCodeList.size() > 0) {
|
|
|
|
|
|
+ //根据KEY 获取对应的 redis存储的value,存储数据为空进行新的存储
|
|
|
|
+ String getErpBarCode = redisTemplate.opsForValue().get("erpBarCode");
|
|
|
|
+
|
|
|
|
+ if (erpBarCodeList != null && erpBarCodeList.size() > 0 && StringUtils.isEmpty(getErpBarCode)) {
|
|
for (ErpProBarCode erpProBarCode : erpBarCodeList) {
|
|
for (ErpProBarCode erpProBarCode : erpBarCodeList) {
|
|
Kv param = Kv.create();
|
|
Kv param = Kv.create();
|
|
param.put("barcode", erpProBarCode.getBarcode());
|
|
param.put("barcode", erpProBarCode.getBarcode());
|
|
@@ -78,7 +90,10 @@ public class ErpSyncServiceImpl implements ErpSyncService {
|
|
SqlPara sqlParaOrderList = Db.getSqlPara("erp.selectOrderList");
|
|
SqlPara sqlParaOrderList = Db.getSqlPara("erp.selectOrderList");
|
|
List<Record> recordOrderList = Db.find(sqlParaOrderList);
|
|
List<Record> recordOrderList = Db.find(sqlParaOrderList);
|
|
List<ErpOrderList> erpOrderLists = RecordUtils.converModel(recordOrderList, ErpOrderList.class);
|
|
List<ErpOrderList> erpOrderLists = RecordUtils.converModel(recordOrderList, ErpOrderList.class);
|
|
- if (erpOrderLists != null && erpOrderLists.size() > 0) {
|
|
|
|
|
|
+ //根据KEY 获取对应的 redis存储的value,存储数据为空进行新的存储
|
|
|
|
+ String getErpOrderList = redisTemplate.opsForValue().get("erpOrderList");
|
|
|
|
+
|
|
|
|
+ if (erpOrderLists != null && erpOrderLists.size() > 0 && StringUtils.isEmpty(getErpOrderList)) {
|
|
for (ErpOrderList erpOrderList : erpOrderLists) {
|
|
for (ErpOrderList erpOrderList : erpOrderLists) {
|
|
Kv param = Kv.create();
|
|
Kv param = Kv.create();
|
|
param.put("orderNo", erpOrderList.getOrderNo());
|
|
param.put("orderNo", erpOrderList.getOrderNo());
|
|
@@ -107,7 +122,9 @@ public class ErpSyncServiceImpl implements ErpSyncService {
|
|
param.set("createDate",erpBarCodeList.getCreateDate());
|
|
param.set("createDate",erpBarCodeList.getCreateDate());
|
|
param.set("wmsMark","N");
|
|
param.set("wmsMark","N");
|
|
SqlPara sqlPara = Db.getSqlPara("erp.insertBarcodeList",param);
|
|
SqlPara sqlPara = Db.getSqlPara("erp.insertBarcodeList",param);
|
|
- Db.update(sqlPara);
|
|
|
|
|
|
+ if (Db.update(sqlPara) == 0) {
|
|
|
|
+ throw new RRException("writeBack失败!");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|