优化代码流程
This commit is contained in:
parent
aeeee1335b
commit
1f296c2ed5
|
@ -1,6 +1,8 @@
|
|||
package com.hzya.frame.plugin.lets.ofs.entity;
|
||||
|
||||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodSearchHeaderDto;
|
||||
import com.hzya.frame.web.entity.BaseEntity;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* root(TocofsReturngoodsDetailed)实体类
|
||||
|
@ -8,6 +10,7 @@ import com.hzya.frame.web.entity.BaseEntity;
|
|||
* @author makejava
|
||||
* @since 2024-08-09 13:45:47
|
||||
*/
|
||||
@Data
|
||||
public class TocofsReturngoodsDetailedEntity extends BaseEntity {
|
||||
/**
|
||||
* 81159
|
||||
|
@ -156,301 +159,4 @@ public class TocofsReturngoodsDetailedEntity extends BaseEntity {
|
|||
// private String returngoodsId;
|
||||
|
||||
private String businessType;
|
||||
|
||||
public String getBusinessType() {
|
||||
return businessType;
|
||||
}
|
||||
|
||||
public void setBusinessType(String businessType) {
|
||||
this.businessType = businessType;
|
||||
}
|
||||
|
||||
public String getReceiptId() {
|
||||
return receiptId;
|
||||
}
|
||||
|
||||
public void setReceiptId(String receiptId) {
|
||||
this.receiptId = receiptId;
|
||||
}
|
||||
|
||||
public String getReceiptCode() {
|
||||
return receiptCode;
|
||||
}
|
||||
|
||||
public void setReceiptCode(String receiptCode) {
|
||||
this.receiptCode = receiptCode;
|
||||
}
|
||||
|
||||
public String getRefOrderId() {
|
||||
return refOrderId;
|
||||
}
|
||||
|
||||
public void setRefOrderId(String refOrderId) {
|
||||
this.refOrderId = refOrderId;
|
||||
}
|
||||
|
||||
public String getRefOrderDetailId() {
|
||||
return refOrderDetailId;
|
||||
}
|
||||
|
||||
public void setRefOrderDetailId(String refOrderDetailId) {
|
||||
this.refOrderDetailId = refOrderDetailId;
|
||||
}
|
||||
|
||||
public String getSourceOrderCode() {
|
||||
return sourceOrderCode;
|
||||
}
|
||||
|
||||
public void setSourceOrderCode(String sourceOrderCode) {
|
||||
this.sourceOrderCode = sourceOrderCode;
|
||||
}
|
||||
|
||||
public String getClientCode() {
|
||||
return clientCode;
|
||||
}
|
||||
|
||||
public void setClientCode(String clientCode) {
|
||||
this.clientCode = clientCode;
|
||||
}
|
||||
|
||||
public String getCompanyCode() {
|
||||
return companyCode;
|
||||
}
|
||||
|
||||
public void setCompanyCode(String companyCode) {
|
||||
this.companyCode = companyCode;
|
||||
}
|
||||
|
||||
public String getFacilityCode() {
|
||||
return facilityCode;
|
||||
}
|
||||
|
||||
public void setFacilityCode(String facilityCode) {
|
||||
this.facilityCode = facilityCode;
|
||||
}
|
||||
|
||||
public String getSkuCode() {
|
||||
return skuCode;
|
||||
}
|
||||
|
||||
public void setSkuCode(String skuCode) {
|
||||
this.skuCode = skuCode;
|
||||
}
|
||||
|
||||
public String getSkuName() {
|
||||
return skuName;
|
||||
}
|
||||
|
||||
public void setSkuName(String skuName) {
|
||||
this.skuName = skuName;
|
||||
}
|
||||
|
||||
public String getRequestQty() {
|
||||
return requestQty;
|
||||
}
|
||||
|
||||
public void setRequestQty(String requestQty) {
|
||||
this.requestQty = requestQty;
|
||||
}
|
||||
|
||||
public String getReceivedQty() {
|
||||
return receivedQty;
|
||||
}
|
||||
|
||||
public void setReceivedQty(String receivedQty) {
|
||||
this.receivedQty = receivedQty;
|
||||
}
|
||||
|
||||
public String getOpenQty() {
|
||||
return openQty;
|
||||
}
|
||||
|
||||
public void setOpenQty(String openQty) {
|
||||
this.openQty = openQty;
|
||||
}
|
||||
|
||||
public String getQuantityUM() {
|
||||
return quantityUM;
|
||||
}
|
||||
|
||||
public void setQuantityUM(String quantityUM) {
|
||||
this.quantityUM = quantityUM;
|
||||
}
|
||||
|
||||
public String getTotalWeight() {
|
||||
return totalWeight;
|
||||
}
|
||||
|
||||
public void setTotalWeight(String totalWeight) {
|
||||
this.totalWeight = totalWeight;
|
||||
}
|
||||
|
||||
public String getTotalVolume() {
|
||||
return totalVolume;
|
||||
}
|
||||
|
||||
public void setTotalVolume(String totalVolume) {
|
||||
this.totalVolume = totalVolume;
|
||||
}
|
||||
|
||||
public String getTotalVolumeWeight() {
|
||||
return totalVolumeWeight;
|
||||
}
|
||||
|
||||
public void setTotalVolumeWeight(String totalVolumeWeight) {
|
||||
this.totalVolumeWeight = totalVolumeWeight;
|
||||
}
|
||||
|
||||
public String getTotalAmount() {
|
||||
return totalAmount;
|
||||
}
|
||||
|
||||
public void setTotalAmount(String totalAmount) {
|
||||
this.totalAmount = totalAmount;
|
||||
}
|
||||
|
||||
public String getWeightUM() {
|
||||
return weightUM;
|
||||
}
|
||||
|
||||
public void setWeightUM(String weightUM) {
|
||||
this.weightUM = weightUM;
|
||||
}
|
||||
|
||||
public String getVolumeUM() {
|
||||
return volumeUM;
|
||||
}
|
||||
|
||||
public void setVolumeUM(String volumeUM) {
|
||||
this.volumeUM = volumeUM;
|
||||
}
|
||||
|
||||
public String getInventorySts() {
|
||||
return inventorySts;
|
||||
}
|
||||
|
||||
public void setInventorySts(String inventorySts) {
|
||||
this.inventorySts = inventorySts;
|
||||
}
|
||||
|
||||
public String getInTransInvId() {
|
||||
return inTransInvId;
|
||||
}
|
||||
|
||||
public void setInTransInvId(String inTransInvId) {
|
||||
this.inTransInvId = inTransInvId;
|
||||
}
|
||||
|
||||
public String getClosed() {
|
||||
return closed;
|
||||
}
|
||||
|
||||
public void setClosed(String closed) {
|
||||
this.closed = closed;
|
||||
}
|
||||
|
||||
public String getCreated() {
|
||||
return created;
|
||||
}
|
||||
|
||||
public void setCreated(String created) {
|
||||
this.created = created;
|
||||
}
|
||||
|
||||
public String getCreatedBy() {
|
||||
return createdBy;
|
||||
}
|
||||
|
||||
public void setCreatedBy(String createdBy) {
|
||||
this.createdBy = createdBy;
|
||||
}
|
||||
|
||||
public String getLastUpdated() {
|
||||
return lastUpdated;
|
||||
}
|
||||
|
||||
public void setLastUpdated(String lastUpdated) {
|
||||
this.lastUpdated = lastUpdated;
|
||||
}
|
||||
|
||||
public String getLastUpdatedBy() {
|
||||
return lastUpdatedBy;
|
||||
}
|
||||
|
||||
public void setLastUpdatedBy(String lastUpdatedBy) {
|
||||
this.lastUpdatedBy = lastUpdatedBy;
|
||||
}
|
||||
|
||||
public String getDiscountPrice() {
|
||||
return discountPrice;
|
||||
}
|
||||
|
||||
public void setDiscountPrice(String discountPrice) {
|
||||
this.discountPrice = discountPrice;
|
||||
}
|
||||
|
||||
public String getNewTransmitinfo() {
|
||||
return newTransmitinfo;
|
||||
}
|
||||
|
||||
public void setNewTransmitinfo(String newTransmitinfo) {
|
||||
this.newTransmitinfo = newTransmitinfo;
|
||||
}
|
||||
|
||||
public String getNewPushdate() {
|
||||
return newPushdate;
|
||||
}
|
||||
|
||||
public void setNewPushdate(String newPushdate) {
|
||||
this.newPushdate = newPushdate;
|
||||
}
|
||||
|
||||
public String getNewState() {
|
||||
return newState;
|
||||
}
|
||||
|
||||
public void setNewState(String newState) {
|
||||
this.newState = newState;
|
||||
}
|
||||
|
||||
public String getNewSystemNumber() {
|
||||
return newSystemNumber;
|
||||
}
|
||||
|
||||
public void setNewSystemNumber(String newSystemNumber) {
|
||||
this.newSystemNumber = newSystemNumber;
|
||||
}
|
||||
|
||||
public String getNewSystemPrimary() {
|
||||
return newSystemPrimary;
|
||||
}
|
||||
|
||||
public void setNewSystemPrimary(String newSystemPrimary) {
|
||||
this.newSystemPrimary = newSystemPrimary;
|
||||
}
|
||||
|
||||
public String getPrimaryKey() {
|
||||
return primaryKey;
|
||||
}
|
||||
|
||||
public void setPrimaryKey(String primaryKey) {
|
||||
this.primaryKey = primaryKey;
|
||||
}
|
||||
|
||||
public String getBusinessDate() {
|
||||
return businessDate;
|
||||
}
|
||||
|
||||
public void setBusinessDate(String businessDate) {
|
||||
this.businessDate = businessDate;
|
||||
}
|
||||
|
||||
// public String getReturngoodsId() {
|
||||
// return returngoodsId;
|
||||
// }
|
||||
//
|
||||
// public void setReturngoodsId(String returngoodsId) {
|
||||
// this.returngoodsId = returngoodsId;
|
||||
// }
|
||||
|
||||
}
|
|
@ -34,4 +34,8 @@ public class QueryOfsSoSaleOutVo {
|
|||
private String shipAt_start;
|
||||
|
||||
private String shipAt_end;
|
||||
|
||||
private String closedAt_start;
|
||||
|
||||
private String closedAt_end;
|
||||
}
|
||||
|
|
|
@ -255,8 +255,9 @@ public class AdjustInPluginInitializer extends PluginBaseEntity {
|
|||
//vnote--备注
|
||||
parentvo.setVnote(ofsHeader.getNote());
|
||||
//dbilldate--单据日期--oms入库时间
|
||||
Date created = ofsHeader.getCreated();
|
||||
format = DateUtil.format(created, "yyyy-MM-dd HH:mm:ss");
|
||||
String created = ofsHeader.getCreated();
|
||||
// format = DateUtil.format(created, "yyyy-MM-dd HH:mm:ss");
|
||||
format = created;
|
||||
parentvo.setDbilldate(format);
|
||||
//coperatorid--制单人
|
||||
String createdBy = ofsHeader.getCreatedBy();
|
||||
|
|
|
@ -211,12 +211,17 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
|
|||
HeaderDto header = index.getHeader();// 主表
|
||||
List<DetailsDto> details = index.getDetails();//明细表
|
||||
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
DetailsDto detailsDto = details.get(i);
|
||||
detailsDto.setHeaderDto(header);
|
||||
}
|
||||
|
||||
headerDetailsDtoList1.add(header);
|
||||
headerDetailsDtoList2.addAll(details);
|
||||
}
|
||||
|
||||
//每250作为一个批次插入主表,根据主键(id)判断是否重复,如果重复的,则不进行插入
|
||||
List<List<HeaderDto>> ofssaleorderoutsearchList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 250);
|
||||
List<List<HeaderDto>> ofssaleorderoutsearchList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 100);
|
||||
for (int i = 0; i < ofssaleorderoutsearchList.size(); i++) {
|
||||
List<HeaderDto> headerDtoList = ofssaleorderoutsearchList.get(i);
|
||||
List<TocofsSaleoutEntity> tocofsSaleoutEntityList = copyHeaderDto(headerDtoList);
|
||||
|
@ -229,7 +234,7 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
|
|||
}
|
||||
|
||||
//插入明细表
|
||||
List<List<DetailsDto>> detailsDtoList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 250);
|
||||
List<List<DetailsDto>> detailsDtoList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 100);
|
||||
for (int i = 0; i < detailsDtoList.size(); i++) {
|
||||
List<DetailsDto> detailsDtos = detailsDtoList.get(i);
|
||||
List<TocofsSaleoutDetailedEntity> tocofsSaleoutDetailedEntities = copyDetailsDto(detailsDtos);
|
||||
|
@ -679,9 +684,10 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
|
|||
for (int i = 0; i < detailsDtos.size(); i++) {
|
||||
DetailsDto detailsDto = detailsDtos.get(i);
|
||||
TocofsSaleoutDetailedEntity tocofsSaleoutDetailedEntity = new TocofsSaleoutDetailedEntity();
|
||||
tocofsSaleoutDetailedEntity.setBusinessType("TOB_ORDER");
|
||||
// tocofsSaleoutDetailedEntity.setBusinessType("TOB_ORDER");
|
||||
// BeanUtils.copyProperties(detailsDto, tocofsSaleoutDetailedEntity);
|
||||
BeanUtil.copyPropertiesV2(detailsDto, tocofsSaleoutDetailedEntity);
|
||||
createPrimaryKeyAndBusinessDateAndBusinessType(tocofsSaleoutDetailedEntity, detailsDto);
|
||||
tocofsSaleoutDetailedEntityArrayList.add(tocofsSaleoutDetailedEntity);
|
||||
}
|
||||
}
|
||||
|
@ -843,4 +849,20 @@ public class SoSaleOutPluginInitializerToB extends PluginBaseEntity {
|
|||
SaleOrderMessageDto saleOrderMessageDto = (SaleOrderMessageDto) ofsUnifiedService.unified(interfaceParamDto);
|
||||
return saleOrderMessageDto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 2024年8月15日 17:08:42
|
||||
* 填充主表主键、业务日期、业务类型
|
||||
*/
|
||||
private void createPrimaryKeyAndBusinessDateAndBusinessType(TocofsSaleoutDetailedEntity tocofsSaleoutDetailedEntity, DetailsDto detailsDto) {
|
||||
if (tocofsSaleoutDetailedEntity != null && detailsDto != null && detailsDto.getHeaderDto() != null) {
|
||||
HeaderDto headerDto = detailsDto.getHeaderDto();
|
||||
|
||||
tocofsSaleoutDetailedEntity.setPrimaryKey(headerDto.getId());//主表主键
|
||||
tocofsSaleoutDetailedEntity.setBusinessDate(headerDto.getShipAt());//业务日期
|
||||
tocofsSaleoutDetailedEntity.setBusinessType("TOB_ORDER");//业务类型
|
||||
} else {
|
||||
logger.info("createPrimaryKeyAndBusinessDateAndBusinessType方法存在false!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -196,33 +196,38 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
|||
com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto header = index.getHeader();// 主表
|
||||
List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto> details = index.getDetails();//明细表
|
||||
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
DetailsDto detailsDto = details.get(i);
|
||||
detailsDto.setHeaderDto(header);
|
||||
}
|
||||
|
||||
headerDetailsDtoList1.add(header);
|
||||
headerDetailsDtoList2.addAll(details);
|
||||
}
|
||||
|
||||
//每250作为一个批次插入主表,根据主键(id)判断是否重复,如果重复的,则不进行插入
|
||||
List<List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto>> ofssaleorderoutsearchList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 250);
|
||||
List<List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto>> ofssaleorderoutsearchList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 100);
|
||||
for (int i = 0; i < ofssaleorderoutsearchList.size(); i++) {
|
||||
List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto> headerDtoList = ofssaleorderoutsearchList.get(i);
|
||||
List<TocofsSaleoutEntity> tocofsSaleoutEntityList = copyHeaderDto(headerDtoList);
|
||||
if (tocofsSaleoutEntityList.size() > 0) {
|
||||
logger.info("tocofsSaleoutDetailedEntities:插入底表{}个对象(表头)", tocofsSaleoutEntityList.size());
|
||||
logger.info("TocofsSaleoutEntity:插入底表{}个对象(表头)", tocofsSaleoutEntityList.size());
|
||||
iTocofsSaleoutDao.entityInsertBatchV2(tocofsSaleoutEntityList);
|
||||
} else {
|
||||
logger.info("tocofsSaleoutEntityList:没有对象被插入表头底表");
|
||||
logger.info("TocofsSaleoutEntity:没有对象被插入表头底表");
|
||||
}
|
||||
}
|
||||
|
||||
//插入明细表
|
||||
List<List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto>> detailsDtoList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 250);
|
||||
List<List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto>> detailsDtoList = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 100);
|
||||
for (int i = 0; i < detailsDtoList.size(); i++) {
|
||||
List<com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto> detailsDtos = detailsDtoList.get(i);
|
||||
List<TocofsSaleoutDetailedEntity> tocofsSaleoutDetailedEntities = copyDetailsDto(detailsDtos);
|
||||
if (tocofsSaleoutDetailedEntities.size() > 0) {
|
||||
logger.info("tocofsSaleoutDetailedEntities:插入底表{}个对象(表体)", tocofsSaleoutDetailedEntities.size());
|
||||
logger.info("TocofsSaleoutDetailedEntity:插入底表{}个对象(表体)", tocofsSaleoutDetailedEntities.size());
|
||||
iTocofsSaleoutDetailedDao.entityInsertBatchV2(tocofsSaleoutDetailedEntities);
|
||||
} else {
|
||||
logger.info("tocofsSaleoutDetailedEntities:没有对象被插入表头底表");
|
||||
logger.info("TocofsSaleoutDetailedEntity:没有对象被插入表头底表");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -604,9 +609,11 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
|||
for (int i = 0; i < detailsDtos.size(); i++) {
|
||||
com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto detailsDto = detailsDtos.get(i);
|
||||
TocofsSaleoutDetailedEntity tocofsSaleoutDetailedEntity = new TocofsSaleoutDetailedEntity();
|
||||
tocofsSaleoutDetailedEntity.setBusinessType("TOC_ORDER");
|
||||
// tocofsSaleoutDetailedEntity.setBusinessType("TOC_ORDER");
|
||||
// BeanUtils.copyProperties(detailsDto, tocofsSaleoutDetailedEntity);
|
||||
|
||||
BeanUtil.copyPropertiesV2(detailsDto, tocofsSaleoutDetailedEntity);
|
||||
createPrimaryKeyAndBusinessDateAndBusinessType(tocofsSaleoutDetailedEntity, detailsDto);
|
||||
tocofsSaleoutDetailedEntityArrayList.add(tocofsSaleoutDetailedEntity);
|
||||
}
|
||||
}
|
||||
|
@ -849,4 +856,20 @@ public class SoSaleOutPluginInitializerToC extends PluginBaseEntity {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 2024年8月15日 17:08:42
|
||||
* 填充主表主键、业务日期、业务类型
|
||||
*/
|
||||
private void createPrimaryKeyAndBusinessDateAndBusinessType(TocofsSaleoutDetailedEntity tocofsSaleoutDetailedEntity, DetailsDto detailsDto) {
|
||||
if (tocofsSaleoutDetailedEntity != null && detailsDto != null && detailsDto.getHeaderDto() != null) {
|
||||
HeaderDto headerDto = detailsDto.getHeaderDto();
|
||||
|
||||
tocofsSaleoutDetailedEntity.setPrimaryKey(headerDto.getId());//主表主键
|
||||
tocofsSaleoutDetailedEntity.setBusinessDate(headerDto.getShipAt());//业务日期
|
||||
tocofsSaleoutDetailedEntity.setBusinessType("TOC_ORDER");//业务类型
|
||||
} else {
|
||||
logger.info("createPrimaryKeyAndBusinessDateAndBusinessType方法存在false!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,6 +28,7 @@ import com.hzya.frame.ttxofs.dto.returngoodsearch.RertunGoodsRootBean;
|
|||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodHeaderDetailsDataDto;
|
||||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodSearchDetailsDto;
|
||||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodSearchHeaderDto;
|
||||
import com.hzya.frame.ttxofs.dto.stock.StockinOrderSearchResponse;
|
||||
import com.hzya.frame.ttxofs.service.OfsUnifiedService;
|
||||
import com.hzya.frame.web.entity.JsonResultEntity;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -150,26 +151,26 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
// TODO 注意过滤TOB店铺
|
||||
CalculateDateVo calculateDateVo = DateStrUtil.calculateCalculateEntireDayPeriod(dateStr);
|
||||
|
||||
List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoArrayList = new ArrayList<>();
|
||||
List<StockinOrderSearchResponse.StockinOrder> returnGoodHeaderDetailsDataDtoArrayList = new ArrayList<>();
|
||||
QueryOfsSoSaleOutVo queryOfsSoSaleOutVo = new QueryOfsSoSaleOutVo();
|
||||
queryOfsSoSaleOutVo.setCreated_start("2024-07-16 15:35:35");
|
||||
queryOfsSoSaleOutVo.setCreated_end("2024-07-16 15:35:37");
|
||||
queryOfsSoSaleOutVo.setClosedAt_start("2024-07-16 16:44:00");
|
||||
queryOfsSoSaleOutVo.setClosedAt_end("2024-07-16 16:44:02");
|
||||
queryOfsSoSaleOutVo.setClientCode("LETS");
|
||||
// queryOfsSoSaleOutVo.setInternalInstructionType("SALES");
|
||||
queryOfsSoSaleOutVo.setCompanyCode("SHLZ");
|
||||
// queryOfsSoSaleOutVo.setStatus(900L);
|
||||
queryOfsSoSaleOutVo.setPageNo(1L);
|
||||
queryOfsSoSaleOutVo.setPageSize(50L);
|
||||
queryOfsSoSaleOutVo.setCode("LETS-RE2024071600000001");
|
||||
// queryOfsSoSaleOutVo.setCode("LETS-RE2024071600000001");
|
||||
queryOfsReturnGoods(queryOfsSoSaleOutVo, returnGoodHeaderDetailsDataDtoArrayList, 1L);
|
||||
logger.info("数据返回行数:{}", returnGoodHeaderDetailsDataDtoArrayList.size());
|
||||
if (returnGoodHeaderDetailsDataDtoArrayList.size() > 0) {
|
||||
//保存到mysql
|
||||
batchInsert(returnGoodHeaderDetailsDataDtoArrayList);
|
||||
//过滤成功的数据
|
||||
List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoList = filterData(returnGoodHeaderDetailsDataDtoArrayList);
|
||||
List<StockinOrderSearchResponse.StockinOrder> stockinOrderList = filterData(returnGoodHeaderDetailsDataDtoArrayList);
|
||||
//执行推送主逻辑
|
||||
implement(returnGoodHeaderDetailsDataDtoList);
|
||||
implement(stockinOrderList);
|
||||
} else {
|
||||
logger.info("没有查询到任何数据!不需要同步");
|
||||
}
|
||||
|
@ -191,11 +192,11 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
*
|
||||
* @author liuyang
|
||||
*/
|
||||
private List<ReturnGoodHeaderDetailsDataDto> filterData(List<ReturnGoodHeaderDetailsDataDto> headerDetailsDtoList) {
|
||||
List<ReturnGoodHeaderDetailsDataDto> headerDetailsDtoList1 = new ArrayList<>();
|
||||
if (headerDetailsDtoList != null && headerDetailsDtoList.size() > 0) {
|
||||
private List<StockinOrderSearchResponse.StockinOrder> filterData(List<StockinOrderSearchResponse.StockinOrder> returnGoodHeaderDetailsDataDtoArrayList) {
|
||||
List<StockinOrderSearchResponse.StockinOrder> headerDetailsDtoList1 = new ArrayList<>();
|
||||
if (returnGoodHeaderDetailsDataDtoArrayList != null && returnGoodHeaderDetailsDataDtoArrayList.size() > 0) {
|
||||
//TODO 出库单明细主键,需要O返回,目前没有,已经提需求
|
||||
headerDetailsDtoList1.addAll(headerDetailsDtoList);
|
||||
headerDetailsDtoList1.addAll(returnGoodHeaderDetailsDataDtoArrayList);
|
||||
}
|
||||
return headerDetailsDtoList1;
|
||||
}
|
||||
|
@ -205,24 +206,29 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
*
|
||||
* @param returnGoodHeaderDetailsDataDtoArrayList 数据行
|
||||
*/
|
||||
private void batchInsert(List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoArrayList) throws Exception {
|
||||
private void batchInsert(List<StockinOrderSearchResponse.StockinOrder> returnGoodHeaderDetailsDataDtoArrayList) throws Exception {
|
||||
if (returnGoodHeaderDetailsDataDtoArrayList != null && returnGoodHeaderDetailsDataDtoArrayList.size() > 0) {
|
||||
List<ReturnGoodSearchHeaderDto> headerDetailsDtoList1 = new ArrayList<>();
|
||||
List<ReturnGoodSearchDetailsDto> headerDetailsDtoList2 = new ArrayList<>();
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinH> headerDetailsDtoList1 = new ArrayList<>();
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinB> headerDetailsDtoList2 = new ArrayList<>();
|
||||
|
||||
for (ReturnGoodHeaderDetailsDataDto index : returnGoodHeaderDetailsDataDtoArrayList) {
|
||||
ReturnGoodSearchHeaderDto header = index.getHeader();// 主表
|
||||
List<ReturnGoodSearchDetailsDto> details = index.getDetails();//明细表
|
||||
for (StockinOrderSearchResponse.StockinOrder index : returnGoodHeaderDetailsDataDtoArrayList) {
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH header = index.getHeader();// 主表
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinB> details = index.getDetails();//明细表
|
||||
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
StockinOrderSearchResponse.StockinOrder.StockinB stockinB = details.get(i);
|
||||
stockinB.setReturnGoodSearchHeaderDto(header);
|
||||
}
|
||||
|
||||
headerDetailsDtoList1.add(header);
|
||||
headerDetailsDtoList2.addAll(details);
|
||||
}
|
||||
|
||||
//每100作为一个批次插入主表,根据主键(id)判断是否重复,如果重复的,则不进行插入
|
||||
List<List<ReturnGoodSearchHeaderDto>> lists = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 100);
|
||||
List<List<StockinOrderSearchResponse.StockinOrder.StockinH>> lists = SplitListByCountUtil.splitListByCount(headerDetailsDtoList1, 100);
|
||||
for (int i = 0; i < lists.size(); i++) {
|
||||
List<ReturnGoodSearchHeaderDto> returnGoodSearchHeaderDtos = lists.get(i);
|
||||
List<TocofsReturngoodsEntity> tocofsReturngoodsEntities = copyHeaderDto(returnGoodSearchHeaderDtos);
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinH> stockinHS = lists.get(i);
|
||||
List<TocofsReturngoodsEntity> tocofsReturngoodsEntities = copyHeaderDto(stockinHS);
|
||||
if (tocofsReturngoodsEntities.size() > 0) {
|
||||
logger.info("TocofsReturngoodsEntity:插入底表{}个对象(表头)", tocofsReturngoodsEntities.size());
|
||||
iTocofsReturngoodsDao.entityInsertBatchV2(tocofsReturngoodsEntities);
|
||||
|
@ -232,10 +238,10 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
}
|
||||
|
||||
//插入明细表
|
||||
List<List<ReturnGoodSearchDetailsDto>> lists1 = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 100);
|
||||
List<List<StockinOrderSearchResponse.StockinOrder.StockinB>> lists1 = SplitListByCountUtil.splitListByCount(headerDetailsDtoList2, 100);
|
||||
for (int i = 0; i < lists1.size(); i++) {
|
||||
List<ReturnGoodSearchDetailsDto> returnGoodSearchDetailsDtos = lists1.get(i);
|
||||
List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntities = copyDetailsDto(returnGoodSearchDetailsDtos);
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinB> stockinBS = lists1.get(i);
|
||||
List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntities = copyDetailsDto(stockinBS);
|
||||
if (tocofsReturngoodsDetailedEntities.size() > 0) {
|
||||
logger.info("TocofsReturngoodsDetailedEntity:插入底表{}个对象(表体)", tocofsReturngoodsDetailedEntities.size());
|
||||
iTocofsReturngoodsDetailedDao.entityInsertBatchV2(tocofsReturngoodsDetailedEntities);
|
||||
|
@ -253,7 +259,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
* @param headerDetailsDtoList 查询结果集
|
||||
* @param pageNo 从第pageNo页开始查询
|
||||
*/
|
||||
private void queryOfsReturnGoods(QueryOfsSoSaleOutVo queryOfsSoSaleOutVo, List<ReturnGoodHeaderDetailsDataDto> headerDetailsDtoList, Long pageNo) throws Exception {
|
||||
private void queryOfsReturnGoods(QueryOfsSoSaleOutVo queryOfsSoSaleOutVo, List<StockinOrderSearchResponse.StockinOrder> headerDetailsDtoList, Long pageNo) throws Exception {
|
||||
Long pageSize = 200L;
|
||||
queryOfsSoSaleOutVo.setPageNo(pageNo);
|
||||
queryOfsSoSaleOutVo.setPageSize(pageSize);
|
||||
|
@ -261,12 +267,12 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
InterfaceParamDto interfaceParamDto = new InterfaceParamDto();
|
||||
interfaceParamDto.setApi("ofs.receipt.search");
|
||||
interfaceParamDto.setData(JSON.toJSONString(queryOfsSoSaleOutVo));
|
||||
RertunGoodsRootBean rertunGoodsRootBean = (RertunGoodsRootBean) ofsUnifiedService.unified(interfaceParamDto);
|
||||
StockinOrderSearchResponse rertunGoodsRootBean = (StockinOrderSearchResponse) ofsUnifiedService.unified(interfaceParamDto);
|
||||
if (rertunGoodsRootBean != null) {
|
||||
if ("false".equals(rertunGoodsRootBean.getError()) && "0".equals(rertunGoodsRootBean.getCode()) && "Success".equals(rertunGoodsRootBean.getMsg())) {
|
||||
List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoList = rertunGoodsRootBean.getData();
|
||||
if (returnGoodHeaderDetailsDataDtoList != null && returnGoodHeaderDetailsDataDtoList.size() > 0) {
|
||||
headerDetailsDtoList.addAll(returnGoodHeaderDetailsDataDtoList);
|
||||
List<StockinOrderSearchResponse.StockinOrder> stockinOrderList = rertunGoodsRootBean.getData();
|
||||
if (stockinOrderList != null && stockinOrderList.size() > 0) {
|
||||
headerDetailsDtoList.addAll(stockinOrderList);
|
||||
|
||||
//TODO OFS没有提供分页字段,等待开发
|
||||
}
|
||||
|
@ -284,7 +290,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
* @param returnGoodHeaderDetailsDataDtoList 查询得到的O出库单对象
|
||||
* @author liuyang
|
||||
*/
|
||||
private void implement(List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoList) throws Exception {
|
||||
private void implement(List<StockinOrderSearchResponse.StockinOrder> returnGoodHeaderDetailsDataDtoList) throws Exception {
|
||||
if (returnGoodHeaderDetailsDataDtoList != null && returnGoodHeaderDetailsDataDtoList.size() > 0) {
|
||||
try {
|
||||
// 查询基本档案
|
||||
|
@ -295,8 +301,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
try {
|
||||
for (int i = 0; i < orderToBHeaderDtos.size(); i++) {
|
||||
OrderToBHeaderDto orderOutTobHeaderDto = orderToBHeaderDtos.get(i);
|
||||
ReturnGoodSearchHeaderDto header = orderOutTobHeaderDto.getHeader();
|
||||
List<ReturnGoodSearchDetailsDto> details = orderOutTobHeaderDto.getDetails();
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH header = orderOutTobHeaderDto.getHeader();
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinB> details = orderOutTobHeaderDto.getDetails();
|
||||
|
||||
//销售公司、发货公司
|
||||
BdCorpEntity bdCorpEntity = orderOutTobHeaderDto.getBdCorpEntity();
|
||||
|
@ -354,9 +360,9 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
|
||||
//把汇总好的出库单明细行合并成一行
|
||||
for (int j = 0; j < details.size(); j++) {
|
||||
ReturnGoodSearchDetailsDto returnGoodSearchDetailsDto = details.get(j);
|
||||
StockinOrderSearchResponse.StockinOrder.StockinB stockinB = details.get(j);
|
||||
//存货管理档案:取发货公司的存货管理档案
|
||||
BdInvmandocEntity bdInvmandocEntity = queryInventoryMan(returnGoodSearchDetailsDto, bdCalbodyEntity.getPkCorp());
|
||||
BdInvmandocEntity bdInvmandocEntity = queryInventoryMan(stockinB, bdCalbodyEntity.getPkCorp());
|
||||
//存货基础档案
|
||||
BdInvbasdocEntity bdInvbasdocEntity = queryStockBasicArchives(bdInvmandocEntity.getPkInvmandoc(), deliverGoodsCorp.getPkCorp());
|
||||
//根据存货基础档案编码,查询当前存货的税率
|
||||
|
@ -376,13 +382,13 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
BigDecimal noriginalcursummny = null;//价税合计
|
||||
BigDecimal noriginalcurtaxmny = null;//税额
|
||||
try {
|
||||
Assert.notNull(returnGoodSearchDetailsDto.getTotalAmount(), "退货入库单总金额不能为空 明细行对象:{}", JSON.toJSONString(returnGoodSearchDetailsDto));
|
||||
Assert.notNull(returnGoodSearchDetailsDto.getReceivedQty(), "实收数量不能为空 明细行对象:{}", JSON.toJSONString(returnGoodSearchDetailsDto));
|
||||
Assert.notNull(stockinB.getTotalAmount(), "退货入库单总金额不能为空 明细行对象:{}", JSON.toJSONString(stockinB));
|
||||
Assert.notNull(stockinB.getReceivedQty(), "实收数量不能为空 明细行对象:{}", JSON.toJSONString(stockinB));
|
||||
|
||||
noriginalcurtaxprice = new BigDecimal(returnGoodSearchDetailsDto.getTotalAmount()).divide(new BigDecimal(returnGoodSearchDetailsDto.getReceivedQty()), 20, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcurtaxprice = new BigDecimal(stockinB.getTotalAmount()).divide(new BigDecimal(stockinB.getReceivedQty()), 20, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcurprice = noriginalcurtaxprice.divide(new BigDecimal(1).add(new BigDecimal(tax)), 20, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcurmny = noriginalcurprice.multiply(new BigDecimal(returnGoodSearchDetailsDto.getReceivedQty())).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcursummny = noriginalcurtaxprice.multiply(new BigDecimal(returnGoodSearchDetailsDto.getReceivedQty())).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcurmny = noriginalcurprice.multiply(new BigDecimal(stockinB.getReceivedQty())).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcursummny = noriginalcurtaxprice.multiply(new BigDecimal(stockinB.getReceivedQty())).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
noriginalcurtaxmny = noriginalcursummny.subtract(noriginalcurmny).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
} catch (Exception e) {
|
||||
logger.error("TOB金额计算错误", e);
|
||||
|
@ -407,7 +413,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
saleorderRequestChildrenDto.setDdeliverdate(generateBusinessDate);// 要求收货日期
|
||||
saleorderRequestChildrenDto.setNexchangeotobrate("1.00000000");//折本汇率
|
||||
saleorderRequestChildrenDto.setNitemdiscountrate("100.000000");//单品折扣
|
||||
saleorderRequestChildrenDto.setNnumber("-" + returnGoodSearchDetailsDto.getReceivedQty());//数量
|
||||
saleorderRequestChildrenDto.setNnumber("-" + stockinB.getReceivedQty());//数量
|
||||
saleorderRequestChildrenDto.setNoriginalcurdiscountmny("0");//折扣额
|
||||
saleorderRequestChildrenDto.setNoriginalcurmny("-" + noriginalcurmny.stripTrailingZeros().toPlainString());//无税金额
|
||||
// saleorderRequestChildrenDto.setNoriginalcurnetprice(noriginalcurprice.stripTrailingZeros().toPlainString());//无税净价
|
||||
|
@ -448,7 +454,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
*/
|
||||
private String createGenerateBusinessDate(OrderToBHeaderDto orderOutTobHeaderDto) {
|
||||
if (orderOutTobHeaderDto != null && orderOutTobHeaderDto.getHeader() != null && orderOutTobHeaderDto.getHeader().getCheckInFrom() != null) {
|
||||
ReturnGoodSearchHeaderDto header = orderOutTobHeaderDto.getHeader();
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH header = orderOutTobHeaderDto.getHeader();
|
||||
String checkInFrom = header.getCheckInFrom();
|
||||
String businessFormat = null;
|
||||
try {
|
||||
|
@ -470,15 +476,15 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
*
|
||||
* @author liuyang
|
||||
*/
|
||||
private List<OrderToBHeaderDto> queryBasicArchives(List<ReturnGoodHeaderDetailsDataDto> returnGoodHeaderDetailsDataDtoList) {
|
||||
private List<OrderToBHeaderDto> queryBasicArchives(List<StockinOrderSearchResponse.StockinOrder> returnGoodHeaderDetailsDataDtoList) {
|
||||
List<OrderToBHeaderDto> orderToBHeaderDtoArrayList = new ArrayList<>();
|
||||
|
||||
if (returnGoodHeaderDetailsDataDtoList != null && returnGoodHeaderDetailsDataDtoList.size() > 0) {
|
||||
try {
|
||||
for (int i = 0; i < returnGoodHeaderDetailsDataDtoList.size(); i++) {
|
||||
ReturnGoodHeaderDetailsDataDto returnGoodHeaderDetailsDataDto = returnGoodHeaderDetailsDataDtoList.get(i);
|
||||
ReturnGoodSearchHeaderDto header = returnGoodHeaderDetailsDataDto.getHeader();
|
||||
List<ReturnGoodSearchDetailsDto> details = returnGoodHeaderDetailsDataDto.getDetails();
|
||||
StockinOrderSearchResponse.StockinOrder stockinOrder = returnGoodHeaderDetailsDataDtoList.get(i);
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH header = stockinOrder.getHeader();
|
||||
List<StockinOrderSearchResponse.StockinOrder.StockinB> details = stockinOrder.getDetails();
|
||||
|
||||
// 销售公司、发货公司
|
||||
String companyCode = header.getCompanyCode();
|
||||
|
@ -627,18 +633,18 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
* bean copy
|
||||
* 2024年8月15日 14:19:36
|
||||
*/
|
||||
private List<TocofsReturngoodsEntity> copyHeaderDto(List<ReturnGoodSearchHeaderDto> returnGoodSearchHeaderDtos) {
|
||||
private List<TocofsReturngoodsEntity> copyHeaderDto(List<StockinOrderSearchResponse.StockinOrder.StockinH> stockinHS) {
|
||||
List<TocofsReturngoodsEntity> tocofsReturngoodsEntityArrayList = new ArrayList<>();
|
||||
if (returnGoodSearchHeaderDtos != null && returnGoodSearchHeaderDtos.size() > 0) {
|
||||
for (int i = 0; i < returnGoodSearchHeaderDtos.size(); i++) {
|
||||
ReturnGoodSearchHeaderDto headerDto = returnGoodSearchHeaderDtos.get(i);
|
||||
if (stockinHS != null && stockinHS.size() > 0) {
|
||||
for (int i = 0; i < stockinHS.size(); i++) {
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH stockinH = stockinHS.get(i);
|
||||
|
||||
TocofsReturngoodsEntity tocofsReturngoodsEntity = new TocofsReturngoodsEntity();
|
||||
BeanUtil.copyPropertiesV2(headerDto, tocofsReturngoodsEntity);
|
||||
BeanUtil.copyPropertiesV2(stockinH, tocofsReturngoodsEntity);
|
||||
tocofsReturngoodsEntityArrayList.add(tocofsReturngoodsEntity);
|
||||
}
|
||||
} else {
|
||||
logger.info("需要复制{}个bean对象(O表头)", returnGoodSearchHeaderDtos.size());
|
||||
logger.info("需要复制{}个bean对象(O表头)", stockinHS.size());
|
||||
}
|
||||
return tocofsReturngoodsEntityArrayList;
|
||||
}
|
||||
|
@ -647,15 +653,20 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
* bean copy
|
||||
* 2024年8月15日 14:24:38
|
||||
*/
|
||||
private List<TocofsReturngoodsDetailedEntity> copyDetailsDto(List<ReturnGoodSearchDetailsDto> headerDetailsDtoList2) {
|
||||
private List<TocofsReturngoodsDetailedEntity> copyDetailsDto(List<StockinOrderSearchResponse.StockinOrder.StockinB> stockinBS) {
|
||||
List<TocofsReturngoodsDetailedEntity> tocofsSaleoutDetailedEntityArrayList = new ArrayList<>();
|
||||
if (headerDetailsDtoList2 != null && headerDetailsDtoList2.size() > 0) {
|
||||
for (int i = 0; i < headerDetailsDtoList2.size(); i++) {
|
||||
ReturnGoodSearchDetailsDto returnGoodSearchDetailsDto = headerDetailsDtoList2.get(i);
|
||||
if (stockinBS != null && stockinBS.size() > 0) {
|
||||
for (int i = 0; i < stockinBS.size(); i++) {
|
||||
StockinOrderSearchResponse.StockinOrder.StockinB stockinB = stockinBS.get(i);
|
||||
|
||||
//明细行中引用的表头
|
||||
StockinOrderSearchResponse.StockinOrder.StockinH returnGoodSearchHeaderDto = stockinB.getReturnGoodSearchHeaderDto();
|
||||
|
||||
TocofsReturngoodsDetailedEntity tocofsReturngoodsDetailedEntity = new TocofsReturngoodsDetailedEntity();
|
||||
tocofsReturngoodsDetailedEntity.setBusinessType("TOB_RETURN");
|
||||
BeanUtil.copyPropertiesV2(returnGoodSearchDetailsDto, tocofsReturngoodsDetailedEntity);
|
||||
// tocofsReturngoodsDetailedEntity.setBusinessType("TOB_RETURN");
|
||||
BeanUtil.copyPropertiesV2(returnGoodSearchHeaderDto, tocofsReturngoodsDetailedEntity);
|
||||
createPrimaryKeyAndBusinessDateAndBusinessType(tocofsReturngoodsDetailedEntity, returnGoodSearchHeaderDto);
|
||||
|
||||
tocofsSaleoutDetailedEntityArrayList.add(tocofsReturngoodsDetailedEntity);
|
||||
}
|
||||
} else {
|
||||
|
@ -685,7 +696,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
* @param detailsDto 出库单存货明细行
|
||||
* @author liuyang
|
||||
*/
|
||||
private BdInvmandocEntity queryInventoryMan(ReturnGoodSearchDetailsDto detailsDto, String pkCorp) throws Exception {
|
||||
private BdInvmandocEntity queryInventoryMan(StockinOrderSearchResponse.StockinOrder.StockinB detailsDto, String pkCorp) throws Exception {
|
||||
Assert.notNull(detailsDto, "sonDetailsDto不能为空");
|
||||
Assert.notNull(detailsDto.getSkuCode(), "O存货商家编码不能为空");
|
||||
Assert.notNull(pkCorp, "发货公司主键不能为空");
|
||||
|
@ -802,4 +813,16 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 填充主表主键、业务日期、业务类型
|
||||
* 2024年8月15日 17:31:54
|
||||
*/
|
||||
private void createPrimaryKeyAndBusinessDateAndBusinessType(TocofsReturngoodsDetailedEntity tocofsReturngoodsDetailedEntity, StockinOrderSearchResponse.StockinOrder.StockinH returnGoodSearchHeaderDto) {
|
||||
if (tocofsReturngoodsDetailedEntity != null && returnGoodSearchHeaderDto != null) {
|
||||
tocofsReturngoodsDetailedEntity.setPrimaryKey(returnGoodSearchHeaderDto.getId());//主表主键
|
||||
tocofsReturngoodsDetailedEntity.setBusinessDate(returnGoodSearchHeaderDto.getCheckInFrom());//业务日期
|
||||
tocofsReturngoodsDetailedEntity.setBusinessType("TOC_RETURN");//业务类型
|
||||
}
|
||||
}
|
||||
}
|
|
@ -191,6 +191,12 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
|
|||
for (ReturnGoodHeaderDetailsDataDto index : returnGoodHeaderDetailsDataDtoList) {
|
||||
ReturnGoodSearchHeaderDto header = index.getHeader();// 主表
|
||||
List<ReturnGoodSearchDetailsDto> details = index.getDetails();//明细表
|
||||
|
||||
for (int i = 0; i < details.size(); i++) {
|
||||
ReturnGoodSearchDetailsDto returnGoodSearchDetailsDto = details.get(i);
|
||||
returnGoodSearchDetailsDto.setReturnGoodSearchHeaderDto(header);
|
||||
}
|
||||
|
||||
headerDetailsDtoList1.add(header);
|
||||
headerDetailsDtoList2.addAll(details);
|
||||
}
|
||||
|
@ -594,9 +600,13 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
|
|||
for (int i = 0; i < headerDetailsDtoList2.size(); i++) {
|
||||
ReturnGoodSearchDetailsDto returnGoodSearchDetailsDto = headerDetailsDtoList2.get(i);
|
||||
|
||||
//表头
|
||||
ReturnGoodSearchHeaderDto returnGoodSearchHeaderDto = returnGoodSearchDetailsDto.getReturnGoodSearchHeaderDto();
|
||||
|
||||
TocofsReturngoodsDetailedEntity tocofsReturngoodsDetailedEntity = new TocofsReturngoodsDetailedEntity();
|
||||
tocofsReturngoodsDetailedEntity.setBusinessType("TOC_RETURN");
|
||||
// tocofsReturngoodsDetailedEntity.setBusinessType("TOC_RETURN");
|
||||
BeanUtil.copyPropertiesV2(returnGoodSearchDetailsDto, tocofsReturngoodsDetailedEntity);
|
||||
createPrimaryKeyAndBusinessDateAndBusinessType(tocofsReturngoodsDetailedEntity, returnGoodSearchHeaderDto);
|
||||
tocofsSaleoutDetailedEntityArrayList.add(tocofsReturngoodsDetailedEntity);
|
||||
}
|
||||
} else {
|
||||
|
@ -843,4 +853,15 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
|
|||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
* 填充主表主键、业务日期、业务类型
|
||||
* 2024年8月15日 17:31:54
|
||||
*/
|
||||
private void createPrimaryKeyAndBusinessDateAndBusinessType(TocofsReturngoodsDetailedEntity tocofsReturngoodsDetailedEntity, ReturnGoodSearchHeaderDto returnGoodSearchHeaderDto) {
|
||||
if (tocofsReturngoodsDetailedEntity != null && returnGoodSearchHeaderDto != null) {
|
||||
tocofsReturngoodsDetailedEntity.setPrimaryKey(tocofsReturngoodsDetailedEntity.getId());//主表主键
|
||||
tocofsReturngoodsDetailedEntity.setBusinessDate(returnGoodSearchHeaderDto.getCheckInFrom());//业务日期
|
||||
tocofsReturngoodsDetailedEntity.setBusinessType("TOC_RETURN");//业务类型
|
||||
}
|
||||
}
|
||||
}
|
|
@ -5,6 +5,7 @@ import com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.DetailsDto;
|
|||
import com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch.HeaderDto;
|
||||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodSearchDetailsDto;
|
||||
import com.hzya.frame.ttxofs.dto.returngoodsearch.ReturnGoodSearchHeaderDto;
|
||||
import com.hzya.frame.ttxofs.dto.stock.StockinOrderSearchResponse;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -84,10 +85,10 @@ public class OrderToBHeaderDto {
|
|||
/**
|
||||
* TOB售后入库单表头
|
||||
*/
|
||||
private ReturnGoodSearchHeaderDto header;
|
||||
private StockinOrderSearchResponse.StockinOrder.StockinH header;
|
||||
|
||||
/**
|
||||
* TOB售后入库单表体
|
||||
*/
|
||||
private List<ReturnGoodSearchDetailsDto> details;
|
||||
private List<StockinOrderSearchResponse.StockinOrder.StockinB> details;
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package com.hzya.frame.plugin.lets.plugin.sales;
|
||||
|
||||
import com.hzya.frame.WebappApplication;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* @Author:liuyang
|
||||
* @Package:com.hzya.frame.plugin.lets.plugin.sales
|
||||
* @Project:kangarooDataCenterV3
|
||||
* @name:SoSaleReturnPluginInitializerToBTest
|
||||
* @Date:2024/8/16 13:56
|
||||
* @Filename:SoSaleReturnPluginInitializerToBTest
|
||||
*/
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(classes = WebappApplication.class)
|
||||
public class SoSaleReturnPluginInitializerToBTest {
|
||||
|
||||
@Autowired
|
||||
private SoSaleReturnPluginInitializerToB soSaleReturnPluginInitializerToB;
|
||||
|
||||
@Test
|
||||
public void startImplement() {
|
||||
try {
|
||||
soSaleReturnPluginInitializerToB.startImplement(null, null);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,5 +1,8 @@
|
|||
package com.hzya.frame.ttxofs.dto.ofssaleorderoutsearch;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class DetailsDto {
|
||||
|
||||
private String clientCode;
|
||||
|
@ -31,227 +34,8 @@ public class DetailsDto {
|
|||
private String lastUpdated;
|
||||
private String lastUpdatedBy;
|
||||
|
||||
public String getClientCode() {
|
||||
return clientCode;
|
||||
}
|
||||
|
||||
public void setClientCode(String clientCode) {
|
||||
this.clientCode = clientCode;
|
||||
}
|
||||
|
||||
public String getCompanyCode() {
|
||||
return companyCode;
|
||||
}
|
||||
|
||||
public void setCompanyCode(String companyCode) {
|
||||
this.companyCode = companyCode;
|
||||
}
|
||||
|
||||
public String getFacilityCode() {
|
||||
return facilityCode;
|
||||
}
|
||||
|
||||
public void setFacilityCode(String facilityCode) {
|
||||
this.facilityCode = facilityCode;
|
||||
}
|
||||
|
||||
public String getShipmentCode() {
|
||||
return shipmentCode;
|
||||
}
|
||||
|
||||
public void setShipmentCode(String shipmentCode) {
|
||||
this.shipmentCode = shipmentCode;
|
||||
}
|
||||
|
||||
public String getRefOrderId() {
|
||||
return refOrderId;
|
||||
}
|
||||
|
||||
public void setRefOrderId(String refOrderId) {
|
||||
this.refOrderId = refOrderId;
|
||||
}
|
||||
|
||||
public String getRefOrderDetailId() {
|
||||
return refOrderDetailId;
|
||||
}
|
||||
|
||||
public void setRefOrderDetailId(String refOrderDetailId) {
|
||||
this.refOrderDetailId = refOrderDetailId;
|
||||
}
|
||||
|
||||
public String getRefOrderCode() {
|
||||
return refOrderCode;
|
||||
}
|
||||
|
||||
public void setRefOrderCode(String refOrderCode) {
|
||||
this.refOrderCode = refOrderCode;
|
||||
}
|
||||
|
||||
public String getAllocInvId() {
|
||||
return allocInvId;
|
||||
}
|
||||
|
||||
public void setAllocInvId(String allocInvId) {
|
||||
this.allocInvId = allocInvId;
|
||||
}
|
||||
|
||||
public String getSkuCode() {
|
||||
return skuCode;
|
||||
}
|
||||
|
||||
public void setSkuCode(String skuCode) {
|
||||
this.skuCode = skuCode;
|
||||
}
|
||||
|
||||
public String getSkuName() {
|
||||
return skuName;
|
||||
}
|
||||
|
||||
public void setSkuName(String skuName) {
|
||||
this.skuName = skuName;
|
||||
}
|
||||
|
||||
public String getSourceOrderCode() {
|
||||
return sourceOrderCode;
|
||||
}
|
||||
|
||||
public void setSourceOrderCode(String sourceOrderCode) {
|
||||
this.sourceOrderCode = sourceOrderCode;
|
||||
}
|
||||
|
||||
public String getInventorySts() {
|
||||
return inventorySts;
|
||||
}
|
||||
|
||||
public void setInventorySts(String inventorySts) {
|
||||
this.inventorySts = inventorySts;
|
||||
}
|
||||
|
||||
public String getIsGift() {
|
||||
return isGift;
|
||||
}
|
||||
|
||||
public void setIsGift(String isGift) {
|
||||
this.isGift = isGift;
|
||||
}
|
||||
|
||||
public String getRequestQty() {
|
||||
return requestQty;
|
||||
}
|
||||
|
||||
public void setRequestQty(String requestQty) {
|
||||
this.requestQty = requestQty;
|
||||
}
|
||||
|
||||
public String getShipQty() {
|
||||
return shipQty;
|
||||
}
|
||||
|
||||
public void setShipQty(String shipQty) {
|
||||
this.shipQty = shipQty;
|
||||
}
|
||||
|
||||
public String getQuantityUM() {
|
||||
return quantityUM;
|
||||
}
|
||||
|
||||
public void setQuantityUM(String quantityUM) {
|
||||
this.quantityUM = quantityUM;
|
||||
}
|
||||
|
||||
public String getListPrice() {
|
||||
return listPrice;
|
||||
}
|
||||
|
||||
public void setListPrice(String listPrice) {
|
||||
this.listPrice = listPrice;
|
||||
}
|
||||
|
||||
public String getItemTotalAmount() {
|
||||
return itemTotalAmount;
|
||||
}
|
||||
|
||||
public void setItemTotalAmount(String itemTotalAmount) {
|
||||
this.itemTotalAmount = itemTotalAmount;
|
||||
}
|
||||
|
||||
public String getTotalPayAmount() {
|
||||
return totalPayAmount;
|
||||
}
|
||||
|
||||
public void setTotalPayAmount(String totalPayAmount) {
|
||||
this.totalPayAmount = totalPayAmount;
|
||||
}
|
||||
|
||||
public String getTotalWeight() {
|
||||
return totalWeight;
|
||||
}
|
||||
|
||||
public void setTotalWeight(String totalWeight) {
|
||||
this.totalWeight = totalWeight;
|
||||
}
|
||||
|
||||
public String getTotalVolume() {
|
||||
return totalVolume;
|
||||
}
|
||||
|
||||
public void setTotalVolume(String totalVolume) {
|
||||
this.totalVolume = totalVolume;
|
||||
}
|
||||
|
||||
public String getTotalVolumeWeight() {
|
||||
return totalVolumeWeight;
|
||||
}
|
||||
|
||||
public void setTotalVolumeWeight(String totalVolumeWeight) {
|
||||
this.totalVolumeWeight = totalVolumeWeight;
|
||||
}
|
||||
|
||||
public String getWeightUM() {
|
||||
return weightUM;
|
||||
}
|
||||
|
||||
public void setWeightUM(String weightUM) {
|
||||
this.weightUM = weightUM;
|
||||
}
|
||||
|
||||
public String getVolumeUM() {
|
||||
return volumeUM;
|
||||
}
|
||||
|
||||
public void setVolumeUM(String volumeUM) {
|
||||
this.volumeUM = volumeUM;
|
||||
}
|
||||
|
||||
public String getCreated() {
|
||||
return created;
|
||||
}
|
||||
|
||||
public void setCreated(String created) {
|
||||
this.created = created;
|
||||
}
|
||||
|
||||
public String getCreatedBy() {
|
||||
return createdBy;
|
||||
}
|
||||
|
||||
public void setCreatedBy(String createdBy) {
|
||||
this.createdBy = createdBy;
|
||||
}
|
||||
|
||||
public String getLastUpdated() {
|
||||
return lastUpdated;
|
||||
}
|
||||
|
||||
public void setLastUpdated(String lastUpdated) {
|
||||
this.lastUpdated = lastUpdated;
|
||||
}
|
||||
|
||||
public String getLastUpdatedBy() {
|
||||
return lastUpdatedBy;
|
||||
}
|
||||
|
||||
public void setLastUpdatedBy(String lastUpdatedBy) {
|
||||
this.lastUpdatedBy = lastUpdatedBy;
|
||||
}
|
||||
/**
|
||||
* 表头对象
|
||||
*/
|
||||
private HeaderDto headerDto;
|
||||
}
|
|
@ -43,4 +43,6 @@ public class ReturnGoodSearchDetailsDto {
|
|||
private String lastUpdated;
|
||||
private String lastUpdatedBy;
|
||||
private String discountPrice;
|
||||
|
||||
private ReturnGoodSearchHeaderDto returnGoodSearchHeaderDto;
|
||||
}
|
|
@ -3,7 +3,6 @@ package com.hzya.frame.ttxofs.dto.stock;
|
|||
import com.hzya.frame.ttxofs.basics.ReturnMessageBasics;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -21,79 +20,84 @@ public class StockinOrderSearchResponse extends ReturnMessageBasics {
|
|||
@Data
|
||||
public class StockinH {
|
||||
|
||||
private Integer id;
|
||||
private String id;
|
||||
private String clientCode;
|
||||
private String companyCode;
|
||||
private String facilityCode;
|
||||
private String code;
|
||||
private String internalInstructionType;
|
||||
private String bizChannel;
|
||||
private Integer refOrderId;
|
||||
private String refOrderId;
|
||||
private String refOrderCode;
|
||||
private String refOrderType;
|
||||
private Integer closed;
|
||||
private String closed;
|
||||
private String closedBy;
|
||||
private Integer status;
|
||||
private Integer allowOverReceive;
|
||||
private Integer totalLines;
|
||||
private Integer totalQty;
|
||||
private Integer totalAmount;
|
||||
private Integer totalWeight;
|
||||
private Integer totalVolume;
|
||||
private Integer totalVolumeWeight;
|
||||
private Integer totalFulfillAmount;
|
||||
private Integer totalFulfillWeight;
|
||||
private Integer totalFulfillVolume;
|
||||
private Integer totalFulfillVolumeWeight;
|
||||
private Integer totalFulfillQty;
|
||||
private Integer totalCases;
|
||||
private Integer totalContainers;
|
||||
private Integer closeAtQty;
|
||||
private String status;
|
||||
private String allowOverReceive;
|
||||
private String totalLines;
|
||||
private String totalQty;
|
||||
private String totalAmount;
|
||||
private String totalWeight;
|
||||
private String totalVolume;
|
||||
private String totalVolumeWeight;
|
||||
private String totalFulfillAmount;
|
||||
private String totalFulfillWeight;
|
||||
private String totalFulfillVolume;
|
||||
private String totalFulfillVolumeWeight;
|
||||
private String totalFulfillQty;
|
||||
private String totalCases;
|
||||
private String totalContainers;
|
||||
private String closeAtQty;
|
||||
private String quantityUM;
|
||||
private String weightUM;
|
||||
private String volumeUM;
|
||||
private Date checkInFrom;
|
||||
private Date checkInTo;
|
||||
private Date closedAt;
|
||||
private String checkInFrom;
|
||||
private String checkInTo;
|
||||
private String closedAt;
|
||||
private String note;
|
||||
private String sourceOrderCode;
|
||||
private Date created;
|
||||
private String created;
|
||||
private String createdBy;
|
||||
private Date lastUpdated;
|
||||
private String lastUpdated;
|
||||
private String lastUpdatedBy;
|
||||
private String sourcePlatformCode;
|
||||
private String storeCode;
|
||||
}
|
||||
|
||||
@Data
|
||||
public class StockinB {
|
||||
|
||||
private Integer id;
|
||||
private Integer receiptId;
|
||||
private String id;
|
||||
private String receiptId;
|
||||
private String receiptCode;
|
||||
private Integer refOrderId;
|
||||
private Integer refOrderDetailId;
|
||||
private String refOrderId;
|
||||
private String refOrderDetailId;
|
||||
private String clientCode;
|
||||
private String companyCode;
|
||||
private String facilityCode;
|
||||
private String skuCode;
|
||||
private String skuName;
|
||||
private Integer requestQty;
|
||||
private Integer receivedQty;
|
||||
private Integer openQty;
|
||||
private String requestQty;
|
||||
private String receivedQty;
|
||||
private String openQty;
|
||||
private String quantityUM;
|
||||
private Integer totalWeight;
|
||||
private Integer totalVolume;
|
||||
private Integer totalVolumeWeight;
|
||||
private Integer totalAmount;
|
||||
private String totalWeight;
|
||||
private String totalVolume;
|
||||
private String totalVolumeWeight;
|
||||
private String totalAmount;
|
||||
private String weightUM;
|
||||
private String volumeUM;
|
||||
private String inventorySts;
|
||||
private Integer inTransInvId;
|
||||
private Integer closed;
|
||||
private Date created;
|
||||
private String inTransInvId;
|
||||
private String closed;
|
||||
private String created;
|
||||
private String createdBy;
|
||||
private Date lastUpdated;
|
||||
private String lastUpdated;
|
||||
private String lastUpdatedBy;
|
||||
private Integer discountPrice;
|
||||
private String discountPrice;
|
||||
|
||||
//表头对象
|
||||
private StockinH returnGoodSearchHeaderDto;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue