同步脚本本地备份

tags/yfai-mes-ext-v2.4
jun 5 months ago
parent c5987d3bd8
commit 215b62a601

@ -1,4 +1,3 @@
import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant
import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService
import cn.estsh.i3plus.platform.common.tool.MathOperation
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean

@ -8,7 +8,7 @@ import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Autowired
/**
* @Description : MES2PISCES-
* @Description : MES2PISCES-
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/11/18 20:37

@ -0,0 +1,83 @@
import cn.estsh.i3plus.mes.api.iservice.busi.ISyncFuncService
import cn.estsh.i3plus.platform.common.tool.MathOperation
import cn.estsh.i3plus.platform.common.tool.TimeTool
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement
import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel
import cn.estsh.i3plus.pojo.mes.repository.MesShippingOrderManagementRepository
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.util.StringUtils
/**
* @Description : MES2PISCES-
* @Reference :
* @Author : junsheng.li
* @CreateDate 2024/11/29 15:18
* @Modify:
**/
class MesToPiscesMesJisShippingWuhu {
public static final Logger LOGGER = LoggerFactory.getLogger(MesToPiscesMesJisShippingWuhu.class)
@Autowired
private MesShippingOrderManagementRepository mesShippingOrderManagementRepository;
@Autowired
private ISyncFuncService syncFuncService;
def filterData(MesInterfaceDataMapper mapper, List<Map<String, Object>> srcData) throws Exception {
if (srcData == null || srcData.size() == 0) {
return srcData
}
Map<String, MesShippingOrderManagement> mesPartShippingGroupMap = new HashMap<>();
String organizeCode = mapper.getOrganizeCode();
Map<String, Map<String, Object>> destData = new HashMap<>();
for (Map<String, Object> rowMap : srcData) {
if (!StringUtils.isEmpty(rowMap.get("shipping_order_code"))) {
MesShippingOrderManagement mesShipping = getMesShipping(organizeCode, String.valueOf(rowMap.get("shipping_order_code")), mesPartShippingGroupMap)
if (!Objects.isNull(mesShipping)) {
rowMap.put("HANDLE_FID", mesShipping.getFid())
} else {
LOGGER.info("shipping_order_code:{}信息不存在", String.valueOf(rowMap.get("shipping_order_code")))
}
}
//
String key = String.valueOf(rowMap.get("HANDLE_FID")) + String.valueOf(rowMap.get("part_no"))
if (destData.containsKey(key)) {
destData.get(key).put("quantity_per_car", MathOperation.add(Double.valueOf(destData.get(key).get("quantity_per_car") + ""), Double.valueOf(rowMap.get("quantity_per_car") + "")))
} else {
destData.put(key, rowMap)
}
}
//TRANS_ID
if(mapper.getDestColumnMapping().contains("TRANS_ID")){
Date date = new Date();
GenSerialNoModel orderSeqSerialNoModel = new GenSerialNoModel("JIS_SHIPPING_TRANS_ID");
orderSeqSerialNoModel.setYear(MesExtEnumUtil.YEAR_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getYear(date))))
orderSeqSerialNoModel.setMonth(MesExtEnumUtil.MONTH_SHORT.valueOfDescription(Integer.parseInt(TimeTool.getMonth(date))))
orderSeqSerialNoModel.setDay(TimeTool.getDay(date))
List<String> resultList = syncFuncService.syncSerialNo(orderSeqSerialNoModel.organizeCode(organizeCode), "MES2PISCES发运单", organizeCode, srcData.size()).getResultList();
int index = 0;
for (Map<String, Object> rowMap : srcData) {
rowMap.put("TRANS_ID", resultList.get(index));
index++;
}
}
return new ArrayList<>(destData.values());
}
private MesShippingOrderManagement getMesShipping(String organizeCode, String shippingCode, Map<String, MesShippingOrderManagement> mesPartShippingGroupMap) {
if (Objects.isNull(mesPartShippingGroupMap) || !mesPartShippingGroupMap.containsKey(shippingCode)) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getStringEqualPack(shippingCode, "shippingCode", ddlPackBean);
mesPartShippingGroupMap.put(shippingCode, mesShippingOrderManagementRepository.getByProperty(ddlPackBean))
}
return mesPartShippingGroupMap.get(shippingCode);
}
}

@ -29,7 +29,7 @@ class MesProductionRecordToPisces {
public static final Logger LOGGER = LoggerFactory.getLogger(MesProductionRecordToPisces.class)
private static final String[] workCenterCodeList = ["B19CK01A", "B15CK01A", "C06CK01A", "C06CK01B", "C09CK01A", "C12CK01A"] as String[];
private static final String[] workCenterCodeList = ["B19C901A", "B15C901A", "C06C901A", "C06C901B", "C09C901A", "C12C901A"] as String[];
@Autowired
private MesEquipmentRepository equipmentRepository;
@ -40,7 +40,7 @@ class MesProductionRecordToPisces {
@Autowired
private MesWorkOrderRepository workOrderRepository;
@Resource(name = "piscesDataSource")
@Resource(name = "pisces3DataSource")
private DynamicDataSourceProxy piscesDataSource;
@Resource(name = "mesDataSource")
@ -71,6 +71,7 @@ class MesProductionRecordToPisces {
List<Map<String, Object>> destData = new ArrayList<>();
for (Map<String, Object> rowMap : srcData) {
//
Map<String, Object> params = new HashMap<>();
params.put("partNo", rowMap.get("part_no"))
params.put("productSn", rowMap.get("product_sn"))

Loading…
Cancel
Save