|
|
|
@ -9,9 +9,15 @@ import com.glxp.api.constant.BasicProcessStatus;
|
|
|
|
|
import com.glxp.api.constant.Constant;
|
|
|
|
|
import com.glxp.api.constant.ConstantStatus;
|
|
|
|
|
import com.glxp.api.controller.purchase.PurOrderController;
|
|
|
|
|
import com.glxp.api.dao.basic.BasicBusTypeChangeDao;
|
|
|
|
|
import com.glxp.api.dao.basic.BasicBussinessTypeDao;
|
|
|
|
|
import com.glxp.api.dao.inout.*;
|
|
|
|
|
import com.glxp.api.dao.purchase.PurOrderDao;
|
|
|
|
|
import com.glxp.api.dao.purchase.PurOrderDetailDao;
|
|
|
|
|
import com.glxp.api.dao.thrsys.ThrBusTypeOriginDao;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicBusTypeChangeEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.EntrustReceEntity;
|
|
|
|
|
import com.glxp.api.entity.inout.*;
|
|
|
|
|
import com.glxp.api.entity.purchase.PurOrderDetailEntity;
|
|
|
|
|
import com.glxp.api.entity.purchase.PurOrderEntity;
|
|
|
|
@ -19,8 +25,11 @@ import com.glxp.api.entity.sync.BasicDownloadStatusEntity;
|
|
|
|
|
import com.glxp.api.entity.sync.BasicExportStatusEntity;
|
|
|
|
|
import com.glxp.api.entity.sync.SyncDataBustypeEntity;
|
|
|
|
|
import com.glxp.api.entity.sync.SyncDataSetEntity;
|
|
|
|
|
import com.glxp.api.entity.thrsys.ThrBusTypeOriginEntity;
|
|
|
|
|
import com.glxp.api.req.sync.SpsSyncDataRequest;
|
|
|
|
|
import com.glxp.api.res.sync.SpSyncUdiResponse;
|
|
|
|
|
import com.glxp.api.res.sync.SpsSyncBusOrderResponse;
|
|
|
|
|
import com.glxp.api.res.sync.SpsSyncBusResponse;
|
|
|
|
|
import com.glxp.api.res.sync.SpsSyncOrderResponse;
|
|
|
|
|
import com.glxp.api.res.system.SyncDataSetResponse;
|
|
|
|
|
import com.glxp.api.service.inout.IoAddInoutService;
|
|
|
|
@ -44,6 +53,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import javax.validation.Valid;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
@ -70,10 +80,10 @@ public class SpsSyncDownloadController {
|
|
|
|
|
PurOrderDetailService purOrderDetailService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 下发单据,生成单据任务由中继服务,UDI管理系统下载
|
|
|
|
|
// 下发单据接口 ,供给中继服务,UDI管理系统下载
|
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
|
@GetMapping("sps/sync/order")
|
|
|
|
|
public BaseResponse findOrder(SpsSyncDataRequest spsSyncDataRequest) {
|
|
|
|
|
public BaseResponse getOrder(SpsSyncDataRequest spsSyncDataRequest) {
|
|
|
|
|
BaseResponse<SpsSyncOrderResponse> baseResponse = spsSyncDownloadService.findOrder(spsSyncDataRequest);
|
|
|
|
|
BasicExportStatusEntity basicExportStatusEntity = basicExportService.findByData(ConstantStatus.SYNC_SCAN_ORDER, 0);
|
|
|
|
|
String logs = "";
|
|
|
|
@ -93,10 +103,35 @@ public class SpsSyncDownloadController {
|
|
|
|
|
return baseResponse;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 接收中继服务、UDI管理系统上传单据
|
|
|
|
|
|
|
|
|
|
// 下发国家库DI数据,供给中继服务,UDI管理系统下载
|
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
|
@GetMapping("sps/sync/syncUdis")
|
|
|
|
|
public BaseResponse getDiProducts(SpsSyncDataRequest spsSyncDataRequest) {
|
|
|
|
|
|
|
|
|
|
BaseResponse<SpSyncUdiResponse> baseResponse = spsSyncDownloadService.syncUdi(spsSyncDataRequest);
|
|
|
|
|
BasicExportStatusEntity basicExportStatusEntity = basicExportService.findByData(ConstantStatus.SYNC_DI_PRODUCTS, 0);
|
|
|
|
|
String logs = "";
|
|
|
|
|
if (basicExportStatusEntity != null) {
|
|
|
|
|
if (CollUtil.isNotEmpty(baseResponse.getData().getProductInfoEntityList()))
|
|
|
|
|
logs = logs + "DI信息:" + baseResponse.getData().getProductInfoEntityList().size() + "条\n";
|
|
|
|
|
if (CollUtil.isNotEmpty(baseResponse.getData().getUdiCompanyEntities()))
|
|
|
|
|
logs = logs + "医疗器械注册人:" + baseResponse.getData().getUdiCompanyEntities().size() + "条\n";
|
|
|
|
|
basicExportStatusEntity.setRemark(logs);
|
|
|
|
|
basicExportService.updateExportStatus(basicExportStatusEntity);
|
|
|
|
|
|
|
|
|
|
SpSyncUdiResponse spSyncUdiResponse = baseResponse.getData();
|
|
|
|
|
spSyncUdiResponse.setTaskId(basicExportStatusEntity.getId());
|
|
|
|
|
baseResponse.setData(spSyncUdiResponse);
|
|
|
|
|
}
|
|
|
|
|
return baseResponse;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//接收中继服务、UDI管理系统上传单据
|
|
|
|
|
@AuthRuleAnnotation("sps/sync/order/upload")
|
|
|
|
|
@PostMapping("/sps/sync/order/upload")
|
|
|
|
|
public BaseResponse save(@RequestBody @Valid SpsSyncOrderResponse syncDataResponse) {
|
|
|
|
|
public BaseResponse uploadOrder(@RequestBody @Valid SpsSyncOrderResponse syncDataResponse) {
|
|
|
|
|
BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity();
|
|
|
|
|
basicDownloadStatusEntity.setId(CustomUtil.getId());
|
|
|
|
|
basicDownloadStatusEntity.setTaskId(syncDataResponse.getTaskId());
|
|
|
|
@ -220,10 +255,10 @@ public class SpsSyncDownloadController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 接收中级服务,UDI管理系统上传业务单据
|
|
|
|
|
//接收中级服务,UDI管理系统上传业务单据
|
|
|
|
|
@AuthRuleAnnotation("/sps/sync/busOrder/upload")
|
|
|
|
|
@PostMapping("/sps/sync/busOrder/upload")
|
|
|
|
|
public BaseResponse busOrderSava(@RequestBody @Valid SpsSyncBusOrderResponse spsSyncBusOrderResponse) {
|
|
|
|
|
public BaseResponse uploadBusOrder(@RequestBody @Valid SpsSyncBusOrderResponse spsSyncBusOrderResponse) {
|
|
|
|
|
BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity();
|
|
|
|
|
basicDownloadStatusEntity.setId(CustomUtil.getId());
|
|
|
|
|
basicDownloadStatusEntity.setTaskId(spsSyncBusOrderResponse.getTaskId());
|
|
|
|
@ -278,10 +313,83 @@ public class SpsSyncDownloadController {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//接收中继服务、UDI管理系统上传单据类型
|
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
|
@PostMapping("sps/sync/busType/upload")
|
|
|
|
|
public BaseResponse uploadBusType(@RequestBody SpsSyncBusResponse syncDataResponse) {
|
|
|
|
|
if (syncDataResponse != null) {
|
|
|
|
|
SqlSession batchSession = sqlSessionFactory.openSession(ExecutorType.BATCH, TransactionIsolationLevel.READ_COMMITTED);
|
|
|
|
|
BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity();
|
|
|
|
|
basicDownloadStatusEntity.setId(CustomUtil.getId());
|
|
|
|
|
basicDownloadStatusEntity.setTaskId(syncDataResponse.getTaskId());
|
|
|
|
|
basicDownloadStatusEntity.setStartTime(new Date());
|
|
|
|
|
basicDownloadStatusEntity.setIdDatas(ConstantStatus.SYNC_BUS_TYPE);
|
|
|
|
|
basicDownloadStatusEntity.setStatus(0);
|
|
|
|
|
basicDownloadStatusEntity.setType(BasicProcessStatus.NEW_ALL_BUS);
|
|
|
|
|
basicDownloadStatusEntity.setScheduleType(1);
|
|
|
|
|
basicDownloadService.insertDownloadStatus(basicDownloadStatusEntity);
|
|
|
|
|
StringBuffer remark = new StringBuffer();
|
|
|
|
|
// 扫码单据类型
|
|
|
|
|
if (CollUtil.isNotEmpty(syncDataResponse.getBussinessTypeEntities())) {
|
|
|
|
|
try {
|
|
|
|
|
List<BasicBussinessTypeEntity> bussinessTypeEntities = syncDataResponse.getBussinessTypeEntities();
|
|
|
|
|
BasicBussinessTypeDao mapper = batchSession.getMapper(BasicBussinessTypeDao.class);
|
|
|
|
|
for (BasicBussinessTypeEntity bussinessTypeEntity : bussinessTypeEntities) {
|
|
|
|
|
mapper.insertOrUpdate(bussinessTypeEntity);
|
|
|
|
|
}
|
|
|
|
|
batchSession.commit();
|
|
|
|
|
remark.append("扫码单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//业务单据
|
|
|
|
|
if (CollUtil.isNotEmpty(syncDataResponse.getBusTypeChangeEntities())) {
|
|
|
|
|
try {
|
|
|
|
|
List<BasicBusTypeChangeEntity> busTypeChangeEntities = syncDataResponse.getBusTypeChangeEntities();
|
|
|
|
|
BasicBusTypeChangeDao mapper = batchSession.getMapper(BasicBusTypeChangeDao.class);
|
|
|
|
|
busTypeChangeEntities.forEach(busTypeChangeEntity ->
|
|
|
|
|
{
|
|
|
|
|
mapper.insertOrUpdate(busTypeChangeEntity);
|
|
|
|
|
});
|
|
|
|
|
batchSession.commit();
|
|
|
|
|
remark.append("业务单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//原始单据
|
|
|
|
|
if (CollUtil.isNotEmpty(syncDataResponse.getThrBusTypeOriginEntities())) {
|
|
|
|
|
try {
|
|
|
|
|
List<ThrBusTypeOriginEntity> bussinessTypeEntities = syncDataResponse.getThrBusTypeOriginEntities();
|
|
|
|
|
ThrBusTypeOriginDao mapper = batchSession.getMapper(ThrBusTypeOriginDao.class);
|
|
|
|
|
for (ThrBusTypeOriginEntity bussinessTypeEntity : bussinessTypeEntities) {
|
|
|
|
|
mapper.insertOrUpdate(bussinessTypeEntity);
|
|
|
|
|
}
|
|
|
|
|
batchSession.commit();
|
|
|
|
|
remark.append("第三方单据类型:").append(syncDataResponse.getBussinessTypeEntities().size()).append("条\n");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
batchSession.close();
|
|
|
|
|
basicDownloadStatusEntity.setStatus(1);
|
|
|
|
|
basicDownloadStatusEntity.setUpdateTime(new Date());
|
|
|
|
|
basicDownloadStatusEntity.setEndTime(new Date());
|
|
|
|
|
basicDownloadStatusEntity.setRemark(remark.toString());
|
|
|
|
|
basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity);
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success("上传成功!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//接收中继服务、UDI管理系统上传基础信息
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//接收中继服务、UDI管理系统上传系统设置
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//接收中继服务、UDI管理系统上传第三方产品信息
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|