api跳转国家同步库
parent
6c1c70d004
commit
62db8aea20
@ -0,0 +1,47 @@
|
||||
package com.glxp.udi.admin.config;
|
||||
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.google.gson.JsonDeserializationContext;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonSerializationContext;
|
||||
import feign.Contract;
|
||||
import feign.Feign;
|
||||
import feign.Request;
|
||||
import feign.Retryer;
|
||||
import feign.jackson.JacksonDecoder;
|
||||
import feign.jackson.JacksonEncoder;
|
||||
import lombok.val;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@Configuration
|
||||
public class FeignConfiguration {
|
||||
@Autowired
|
||||
private GlobalConfig globalConfig;
|
||||
@Bean
|
||||
public Contract feignContract() {
|
||||
return new Contract.Default();
|
||||
}
|
||||
@Bean
|
||||
public UdidlService connect(){
|
||||
return Feign.builder()
|
||||
.encoder(new JacksonEncoder())
|
||||
.decoder(new JacksonDecoder())
|
||||
.options(this.options())
|
||||
.retryer(new Retryer.Default(5000,5000,3))
|
||||
.requestInterceptor(template -> template.header("Content-Type","application/json").
|
||||
header("key",globalConfig.getUDI_SERVER_Key()))
|
||||
.target(UdidlService.class,globalConfig.getUDI_SERVER_URL());
|
||||
}
|
||||
private Request.Options options(){
|
||||
return new Request.Options(globalConfig.getUDI_SERVER_ConnectTimeout(), TimeUnit.SECONDS,
|
||||
globalConfig.getUDI_SERVER_ReadTimeout(),TimeUnit.SECONDS,globalConfig.isUDI_SERVER_FollowRedirects());
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.glxp.udi.admin.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@Data
|
||||
public class GlobalConfig {
|
||||
@Value("${UDI_SERVER.url}")
|
||||
private String UDI_SERVER_URL;
|
||||
@Value("${UDI_SERVER.connectTimeout}")
|
||||
private int UDI_SERVER_ConnectTimeout;
|
||||
@Value("${UDI_SERVER.readTimeout}")
|
||||
private int UDI_SERVER_ReadTimeout;
|
||||
@Value("${UDI_SERVER.followRedirects}")
|
||||
private boolean UDI_SERVER_FollowRedirects;
|
||||
@Value("${UDI_SERVER.key}")
|
||||
private String UDI_SERVER_Key;
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.ListPageRequest;
|
||||
import com.glxp.udi.admin.req.feign.DateRange;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.admin.util.DateUtil;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/file")
|
||||
public class FileInfoController {
|
||||
@Autowired
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("/getlist")
|
||||
public BaseResponse getList(@RequestBody ListPageRequest param) {
|
||||
return udidlService.file_getList(param);
|
||||
}
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("/exportToFile")
|
||||
public BaseResponse exportToFile(@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate) {
|
||||
return udidlService.exportToFile(new DateRange(startDate,endDate));
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.JobLogFilterRequest;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/jobLog")
|
||||
public class JobLogController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("/list")
|
||||
public BaseResponse getList(@RequestBody JobLogFilterRequest jobLogFilterRequest){
|
||||
return udidlService.jobLog_getList(jobLogFilterRequest);
|
||||
}
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.DateRange;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
|
||||
@RestController
|
||||
public class UdidlDeviceController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@GetMapping("udidl/device/dlByDays")
|
||||
public BaseResponse dlByDays(@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate, @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate) {
|
||||
return udidlService.dlByDays(new DateRange(startDate,endDate));
|
||||
}
|
||||
@AuthRuleAnnotation("")
|
||||
@GetMapping("udidl/device/dlByDay")
|
||||
public String dlByDay(String day) {
|
||||
return udidlService.dlByDay(day);
|
||||
}
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udidl/device/dlByDi")
|
||||
public BaseResponse downloadByDi(String deviceId) {
|
||||
return udidlService.downloadByDi(deviceId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取产品标识详情
|
||||
*
|
||||
* @param deviceId
|
||||
* @return
|
||||
*/
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udidl/device/downloadSingle")
|
||||
public BaseResponse downloadSingle(String deviceId) {
|
||||
return udidlService.downloadSingle(deviceId);
|
||||
}
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udidl/device/downloadHistory")
|
||||
public BaseResponse downloadHistory(String key) {
|
||||
return udidlService.downloadHistory(key);
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
public class UdplatDistributorController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("/udplat/distributor/list")
|
||||
public BaseResponse getList(@RequestBody BaseParam param){
|
||||
return udidlService.udplatDistributor_getList(param);
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
public class UdplatGoodsController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("/udplat/goods/list")
|
||||
public BaseResponse getList(@RequestBody BaseParam param){
|
||||
return udidlService.udplatGoods_getList(param);
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
public class UdplatHospitalController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udplat/hospital/list")
|
||||
public BaseResponse getList(@RequestBody BaseParam param){
|
||||
return udidlService.udplatHospital_getList(param);
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.req.feign.JobLogFilterRequest;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
public class UdplatLogController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udplat/log/list")
|
||||
public BaseResponse getList(@RequestBody JobLogFilterRequest param){
|
||||
return udidlService.udplatLog_getList(param);
|
||||
}
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.glxp.udi.admin.controller.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.service.udidl.UdidlService;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@RestController
|
||||
public class UdplatManufactureController {
|
||||
@Resource
|
||||
UdidlService udidlService;
|
||||
|
||||
@AuthRuleAnnotation("")
|
||||
@PostMapping("udplat/manufacture/list")
|
||||
public BaseResponse getList(@RequestBody BaseParam param){
|
||||
return udidlService.udplatManufacture_getList(param);
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
package com.glxp.udi.admin.req.feign;
|
||||
|
||||
import com.glxp.udi.admin.req.ListPageRequest;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
@Data
|
||||
public class BaseParam extends ListPageRequest {
|
||||
private String startDate;//开始日期
|
||||
private String endDate;//结束日期
|
||||
private String name;//名称,支持模糊查询
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
package com.glxp.udi.admin.req.feign;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.glxp.udi.admin.util.DateUtil;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class DateRange {
|
||||
/*@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)*/
|
||||
private String startDate;
|
||||
/*@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)*/
|
||||
private String endDate;
|
||||
public DateRange(Date date0,Date date1){
|
||||
this.startDate = DateUtil.formatDate(date0);
|
||||
this.endDate = DateUtil.formatDate(date1);
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
package com.glxp.udi.admin.req.feign;
|
||||
|
||||
import com.glxp.udi.admin.req.ListPageRequest;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class JobLogFilterRequest extends ListPageRequest {
|
||||
private String type;
|
||||
private String downloadType;
|
||||
private String startDate;
|
||||
private String endDate;
|
||||
}
|
@ -0,0 +1,84 @@
|
||||
package com.glxp.udi.admin.service.udidl;
|
||||
|
||||
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
||||
import com.glxp.udi.admin.req.ListPageRequest;
|
||||
import com.glxp.udi.admin.req.feign.BaseParam;
|
||||
import com.glxp.udi.admin.req.feign.DateRange;
|
||||
import com.glxp.udi.admin.req.feign.JobLogFilterRequest;
|
||||
import com.glxp.udi.common.res.BaseResponse;
|
||||
import feign.QueryMap;
|
||||
import feign.RequestLine;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
public interface UdidlService {
|
||||
//<editor-fold desc="国家库同步">
|
||||
@RequestLine("POST /jobLog/list")
|
||||
BaseResponse jobLog_getList(@RequestBody JobLogFilterRequest jobLogFilterRequest);
|
||||
@RequestLine("GET /udidl/device/dlByDays")
|
||||
BaseResponse dlByDays(@QueryMap DateRange dateRange);
|
||||
@RequestLine("GET /udidl/device/dlByDay")
|
||||
String dlByDay(String day);
|
||||
@RequestLine("POST /udidl/device/dlByDi")
|
||||
BaseResponse downloadByDi(String deviceId);
|
||||
@RequestLine("POST /udidl/device/downloadSingle")
|
||||
BaseResponse downloadSingle(String deviceId) ;
|
||||
@RequestLine("POST /udidl/device/downloadHistory")
|
||||
BaseResponse downloadHistory(String key) ;
|
||||
//</editor-fold>
|
||||
|
||||
//<editor-fold desc="文件管理">
|
||||
@RequestLine("POST /file/getlist")
|
||||
BaseResponse file_getList(@RequestBody ListPageRequest param);
|
||||
@RequestLine("POST /file/exportToFile")
|
||||
BaseResponse exportToFile(@QueryMap DateRange dateRange);
|
||||
//</editor-fold>
|
||||
|
||||
//<editor-fold desc="阳关采购平台">
|
||||
|
||||
/**
|
||||
* 配送企业查询
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@RequestLine("POST /udplat/distributor/list")
|
||||
BaseResponse udplatDistributor_getList(@RequestBody BaseParam param);
|
||||
|
||||
/**
|
||||
* 目录清单查询
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@RequestLine("POST /udplat/goods/list")
|
||||
BaseResponse udplatGoods_getList(@RequestBody BaseParam param);
|
||||
|
||||
/**
|
||||
* 医疗机构查询
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@RequestLine("POST /udplat/hospital/list")
|
||||
BaseResponse udplatHospital_getList(@RequestBody BaseParam param);
|
||||
|
||||
/**
|
||||
* 生产企业查询
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@RequestLine("POST /udplat/manufacture/list")
|
||||
BaseResponse udplatManufacture_getList(@RequestBody BaseParam param);
|
||||
|
||||
/**
|
||||
* 日志查询
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@RequestLine("POST /udplat/log/list")
|
||||
BaseResponse udplatLog_getList(@RequestBody JobLogFilterRequest param);
|
||||
|
||||
//</editor-fold>
|
||||
}
|
Loading…
Reference in New Issue