1.添加UDI管理系统拉取数据立即生成同步任务接口

busUser
x_z 3 years ago
parent 11a56c28f3
commit b1e31c2525

@ -2,6 +2,7 @@ package com.glxp.sale.admin.controller.basic;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.glxp.sale.admin.constant.BasicProcessStatus;
import com.glxp.sale.admin.constant.ConstantStatus; import com.glxp.sale.admin.constant.ConstantStatus;
import com.glxp.sale.admin.dao.basic.UdiInfoDao; import com.glxp.sale.admin.dao.basic.UdiInfoDao;
import com.glxp.sale.admin.entity.auth.AuthAdmin; import com.glxp.sale.admin.entity.auth.AuthAdmin;
@ -52,12 +53,14 @@ import com.glxp.sale.admin.service.purchase.SupProductService;
import com.glxp.sale.admin.service.receipt.ProductInfoService; import com.glxp.sale.admin.service.receipt.ProductInfoService;
import com.glxp.sale.admin.service.thrsys.*; import com.glxp.sale.admin.service.thrsys.*;
import com.glxp.sale.admin.util.BeanUtils; import com.glxp.sale.admin.util.BeanUtils;
import com.glxp.sale.admin.util.CustomUtil;
import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.res.BaseResponse;
import com.glxp.sale.common.util.ResultVOUtils; import com.glxp.sale.common.util.ResultVOUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -116,6 +119,10 @@ public class SpsSyncDownloadService {
SupProductService supProductService; SupProductService supProductService;
@Resource @Resource
SupCertService supCertService; SupCertService supCertService;
@Resource
private BasicExportTimeService basicExportTimeService;
@Resource
private BasicExportService basicExportService;
public BaseResponse findProductInfo(SpsSyncDataRequest spsSyncDataRequest) { public BaseResponse findProductInfo(SpsSyncDataRequest spsSyncDataRequest) {
@ -587,6 +594,125 @@ public class SpsSyncDownloadService {
* @return * @return
*/ */
public BaseResponse downloadNow(PostDownloadInfo postDownloadInfo) { public BaseResponse downloadNow(PostDownloadInfo postDownloadInfo) {
return null; //根据请求类型,生成同步任务
if (postDownloadInfo.getType() == 1) {
//基础信息
BaseResponse<SpsSyncDataResponse> baseResponse = findProductInfo(getRequest(ConstantStatus.SYNC_BASIC_DATA, null));
SpsSyncDataResponse spsSyncDataResponse = baseResponse.getData();
if (CollUtil.isNotEmpty(spsSyncDataResponse.getThrOrderDetailEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getThrOrderEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getInvWarehouseEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getBasicUnitMaintainEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getCompanyProductRelevanceEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getThrCorpEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getUdiInfoEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getUdiRelevanceEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getThrProductsEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getThrInvWarehouseEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getAuthAdminList())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getDeptEntityList())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getNewUploadDiEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getSupCompanyEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getSupManufacturerEntities())
|| CollUtil.isNotEmpty(spsSyncDataResponse.getSupProductEntities())
) {
BasicExportStatusTimeEntity basicExportStatusTimeEntity = basicExportTimeService.findByType(ConstantStatus.SYNC_BASIC_DATA);
basicExportTimeService.updateExportStatus(basicExportStatusTimeEntity);
BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity();
basicExportStatusEntity.setId(CustomUtil.getId());
basicExportStatusEntity.setIdDatas(ConstantStatus.SYNC_BASIC_DATA);
basicExportStatusEntity.setType(BasicProcessStatus.NEW_ALL_DATA);
basicExportStatusEntity.setUpdateTime(new Date());
basicExportStatusEntity.setStatus(0);
basicExportStatusEntity.setStartTime(new Date());
basicExportStatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL);
basicExportService.insertExportStatus(basicExportStatusEntity);
} else {
return ResultVOUtils.error(501, "当前暂无更新数据需要同步!");
}
} else if (postDownloadInfo.getType() == 2) {
//单据类型
BaseResponse<SpsSyncBusResponse> baseResponse = findBusType(getRequest(ConstantStatus.SYNC_BUS_TYPE, null));
SpsSyncBusResponse spsSyncBusResponse = baseResponse.getData();
if (CollUtil.isNotEmpty(spsSyncBusResponse.getBussinessLocalTypeEntities())
|| CollUtil.isNotEmpty(spsSyncBusResponse.getBussinessOriginTypeEntities())
|| CollUtil.isNotEmpty(spsSyncBusResponse.getBussinessTypeEntities()) || CollUtil.isNotEmpty(spsSyncBusResponse.getEntrustReceEntities())) {
BasicExportStatusTimeEntity basicExportStatusTimeEntity = basicExportTimeService.findByType(ConstantStatus.SYNC_BUS_TYPE);
if (basicExportStatusTimeEntity != null) {
basicExportTimeService.updateExportStatus(basicExportStatusTimeEntity);
}
BasicExportStatusEntity busTypetatusEntity = new BasicExportStatusEntity();
busTypetatusEntity.setId(CustomUtil.getId());
busTypetatusEntity.setIdDatas(ConstantStatus.SYNC_BUS_TYPE);
busTypetatusEntity.setType(BasicProcessStatus.NEW_ALL_BUS);
busTypetatusEntity.setUpdateTime(new Date());
busTypetatusEntity.setStatus(0);
busTypetatusEntity.setStartTime(new Date());
busTypetatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL);
basicExportService.insertExportStatus(busTypetatusEntity);
} else {
return ResultVOUtils.error(501, "当前暂无更新数据需要同步!");
}
} else if (postDownloadInfo.getType() == 3) {
//扫码单据
BaseResponse<SpsSyncOrderResponse> baseResponse = findOrder(getRequest(ConstantStatus.SYNC_SCAN_ORDER, null));
SpsSyncOrderResponse syncOrderResponse = baseResponse.getData();
if (CollUtil.isNotEmpty(syncOrderResponse.getOrderEntities())) {
BasicExportStatusTimeEntity basicExportStatusTimeEntity = basicExportTimeService.findByType(ConstantStatus.SYNC_SCAN_ORDER);
if (basicExportStatusTimeEntity != null) {
basicExportTimeService.updateExportStatus(basicExportStatusTimeEntity);
}
BasicExportStatusEntity orderStatusEntity = new BasicExportStatusEntity();
orderStatusEntity.setId(CustomUtil.getId());
orderStatusEntity.setIdDatas(ConstantStatus.SYNC_SCAN_ORDER);
orderStatusEntity.setType(BasicProcessStatus.NEW_ALL_ORDER);
orderStatusEntity.setUpdateTime(new Date());
orderStatusEntity.setStatus(0);
orderStatusEntity.setStartTime(new Date());
orderStatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL);
basicExportService.insertExportStatus(orderStatusEntity);
} else {
return ResultVOUtils.error(501, "当前暂无更新数据需要同步!");
}
} else if (postDownloadInfo.getType() == 4) {
//国家库数据
BaseResponse<SpSyncUdiResponse> baseResponse = syncUdi(getRequest(ConstantStatus.SYNC_DI_PRODUCTS, null));
SpSyncUdiResponse spSyncUdiResponse = baseResponse.getData();
if (CollUtil.isNotEmpty(spSyncUdiResponse.getProductInfoEntityList())
|| CollUtil.isNotEmpty(spSyncUdiResponse.getUdiCompanyEntities())) {
BasicExportStatusTimeEntity basicExportStatusTimeEntity = basicExportTimeService.findByType(ConstantStatus.SYNC_DI_PRODUCTS);
if (basicExportStatusTimeEntity != null) {
basicExportTimeService.updateExportStatus(basicExportStatusTimeEntity);
}
BasicExportStatusEntity basicExportStatusEntity = new BasicExportStatusEntity();
basicExportStatusEntity.setId(CustomUtil.getId());
basicExportStatusEntity.setIdDatas(ConstantStatus.SYNC_DI_PRODUCTS);
basicExportStatusEntity.setType(BasicProcessStatus.NEW_ALL_DI);
basicExportStatusEntity.setUpdateTime(new Date());
basicExportStatusEntity.setStatus(0);
basicExportStatusEntity.setStartTime(new Date());
basicExportStatusEntity.setScheduleType(BasicProcessStatus.SCHEDULE_NORMAL);
basicExportService.insertExportStatus(basicExportStatusEntity);
} else {
return ResultVOUtils.error(501, "当前暂无更新数据需要同步!");
}
}
return ResultVOUtils.success("同步任务创建成功!");
}
public SpsSyncDataRequest getRequest(String type, String syncTime) {
SpsSyncDataRequest spsSyncDataRequest = new SpsSyncDataRequest();
spsSyncDataRequest.setPage(1);
spsSyncDataRequest.setLimit(1);
if (StrUtil.isEmpty(syncTime)) {
BasicExportStatusTimeEntity basicExportStatusTimeEntity = basicExportTimeService.findByType(type);
spsSyncDataRequest.setLastUpdateTime(basicExportStatusTimeEntity.getLastUpdateTime());
} else {
spsSyncDataRequest.setLastUpdateTime(syncTime);
}
return spsSyncDataRequest;
} }
} }

Loading…
Cancel
Save