Browse Source

feature : add supervision system

master
王昱 6 months ago
parent
commit
1b2e8a3ec3
4 changed files with 48 additions and 64 deletions
  1. +5
    -3
      src/main/java/com/szyx/tcm/supervision/controller/SuperviseUploadController.java
  2. +34
    -0
      src/main/java/com/szyx/tcm/supervision/model/dto/supervise/SuperviseReq.java
  3. +4
    -7
      src/main/java/com/szyx/tcm/supervision/service/BjSuperviseUploadService.java
  4. +5
    -54
      src/main/java/com/szyx/tcm/supervision/service/Impl/BjSuperviseUploadServiceImpl.java

+ 5
- 3
src/main/java/com/szyx/tcm/supervision/controller/SuperviseUploadController.java View File

@@ -5,7 +5,9 @@ import com.szyx.tcm.supervision.annotation.TraceLog;
import com.szyx.tcm.supervision.enums.OperationTypeEnum; import com.szyx.tcm.supervision.enums.OperationTypeEnum;
import com.szyx.tcm.supervision.model.dto.supervise.RspDetail; import com.szyx.tcm.supervision.model.dto.supervise.RspDetail;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseDto; import com.szyx.tcm.supervision.model.dto.supervise.SuperviseDto;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseReq;
import com.szyx.tcm.supervision.service.BjSuperviseUploadService; import com.szyx.tcm.supervision.service.BjSuperviseUploadService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
@@ -33,13 +35,13 @@ public class SuperviseUploadController {


/** /**
* 监管平台数据上传 * 监管平台数据上传
* @param superviseDto
* @param req
* @return * @return
*/ */
@PostMapping("/upload") @PostMapping("/upload")
@TraceLog(desc = "监管平台数据上传",operationType = OperationTypeEnum.POST) @TraceLog(desc = "监管平台数据上传",operationType = OperationTypeEnum.POST)
public R<RspDetail> uploadInfo(@RequestBody SuperviseDto superviseDto) {
return R.ok(bjSuperviseUploadService.dataUpload(superviseDto));
public RspDetail uploadInfo(@RequestBody @Validated SuperviseReq req) {
return bjSuperviseUploadService.dataUpload(req);
} }


} }

+ 34
- 0
src/main/java/com/szyx/tcm/supervision/model/dto/supervise/SuperviseReq.java View File

@@ -0,0 +1,34 @@
package com.szyx.tcm.supervision.model.dto.supervise;

import lombok.Data;

import javax.validation.constraints.NotNull;

/*******************************************************************
* <pre></pre>
* @文件名称: SuperviseReq.java
* @包 路 径: com.szyx.tcm.supervision.model.dto.supervise
* @Copyright:wy (C) 2024 *
* @Description:
* @Version: V1.0
* @Author: wy
* @Date:2024/3/7 18:04
* @Modify:
*/
@Data
public class SuperviseReq {

@NotNull(message = "url不能为空")
private String url;

@NotNull(message = "token不能为空")
private String token;

@NotNull(message = "superviseDto不能为空")
private SuperviseDto superviseDto;





}

+ 4
- 7
src/main/java/com/szyx/tcm/supervision/service/BjSuperviseUploadService.java View File

@@ -14,6 +14,7 @@ package com.szyx.tcm.supervision.service;


import com.szyx.tcm.supervision.model.dto.supervise.RspDetail; import com.szyx.tcm.supervision.model.dto.supervise.RspDetail;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseDto; import com.szyx.tcm.supervision.model.dto.supervise.SuperviseDto;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseReq;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseTokenRep; import com.szyx.tcm.supervision.model.dto.supervise.SuperviseTokenRep;


/** /**
@@ -22,17 +23,13 @@ import com.szyx.tcm.supervision.model.dto.supervise.SuperviseTokenRep;
*/ */
public interface BjSuperviseUploadService { public interface BjSuperviseUploadService {


/**
* 获取token
* @return
*/
SuperviseTokenRep getToken();



/** /**
* 数据上传 * 数据上传
* @param superviseDto
* @param req
* @return * @return
*/ */
RspDetail dataUpload(SuperviseDto superviseDto);
RspDetail dataUpload(SuperviseReq req);


} }

+ 5
- 54
src/main/java/com/szyx/tcm/supervision/service/Impl/BjSuperviseUploadServiceImpl.java View File

@@ -6,10 +6,7 @@ import com.github.benmanes.caffeine.cache.LoadingCache;
import com.szyx.tcm.supervision.config.CacheAgent; import com.szyx.tcm.supervision.config.CacheAgent;
import com.szyx.tcm.supervision.constant.CacheConstant; import com.szyx.tcm.supervision.constant.CacheConstant;
import com.szyx.tcm.supervision.constant.HttpConstants; import com.szyx.tcm.supervision.constant.HttpConstants;
import com.szyx.tcm.supervision.model.dto.supervise.CommonRsp;
import com.szyx.tcm.supervision.model.dto.supervise.RspDetail;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseDto;
import com.szyx.tcm.supervision.model.dto.supervise.SuperviseTokenRep;
import com.szyx.tcm.supervision.model.dto.supervise.*;
import com.szyx.tcm.supervision.service.BjSuperviseUploadService; import com.szyx.tcm.supervision.service.BjSuperviseUploadService;
import com.szyx.tcm.supervision.util.HttpUtil; import com.szyx.tcm.supervision.util.HttpUtil;
import com.szyx.tcm.supervision.util.XMLMapperUtil; import com.szyx.tcm.supervision.util.XMLMapperUtil;
@@ -41,37 +38,13 @@ import java.util.concurrent.TimeUnit;
@Service @Service
public class BjSuperviseUploadServiceImpl implements BjSuperviseUploadService { public class BjSuperviseUploadServiceImpl implements BjSuperviseUploadService {


@Value("${supervise.url}")
private String url;
@Value("${supervise.appid}")
private String appid;
@Value("${supervise.secret}")
private String secret;

@Resource
private CacheAgent cacheAgent;


@Override
public SuperviseTokenRep getToken() {
String requestUrl = url + "/getToken";
HashMap<String, Object> map = new HashMap<>();
map.put("appid", appid);
map.put("secret", secret);
String data = HttpUtil.get(requestUrl, null, map);
CommonRsp res = JSONObject.parseObject(data, CommonRsp.class);
if (StringUtils.isNotBlank(res.getData())) {
return JSONObject.parseObject(res.getData(), SuperviseTokenRep.class);
}
return null;
}


@Override @Override
@SneakyThrows @SneakyThrows
public RspDetail dataUpload(SuperviseDto superviseDto) {
String token = generateToken();
String requestUrl = url + "/upload?access_token=" + token;
String data = HttpUtil.postByXMl(requestUrl, XMLMapperUtil.getInstance().writerWithDefaultPrettyPrinter().writeValueAsString(superviseDto));
public RspDetail dataUpload(SuperviseReq req) {
String token = req.getToken();
String requestUrl = req.getUrl() + "/upload?access_token=" + token;
String data = HttpUtil.postByXMl(requestUrl, XMLMapperUtil.getInstance().writerWithDefaultPrettyPrinter().writeValueAsString(req.getSuperviseDto()));
CommonRsp res = JSONObject.parseObject(data, CommonRsp.class); CommonRsp res = JSONObject.parseObject(data, CommonRsp.class);
if (res.isSuccess()) { if (res.isSuccess()) {
return JSONObject.parseObject(res.getData(), RspDetail.class); return JSONObject.parseObject(res.getData(), RspDetail.class);
@@ -79,28 +52,6 @@ public class BjSuperviseUploadServiceImpl implements BjSuperviseUploadService {
return new RspDetail(HttpConstants.StatusCode.SERVER_ERROR, res.getMsg()); return new RspDetail(HttpConstants.StatusCode.SERVER_ERROR, res.getMsg());
} }


/**
* 生成token header
*
* @return
*/
private String generateToken() {


SuperviseTokenRep rep = cacheAgent.get(CacheConstant.SUPERVISE_TOKEN);
if(null == rep){
rep = getToken();
cacheAgent.put(CacheConstant.SUPERVISE_TOKEN,rep);
}


String token = null;
if (rep != null) {
token = rep.getAccess_token();
log.info("更新监管平台token成功,token:{},过期时间为:{}", rep.getAccess_token(), DateUtil.offsetSecond(new Date(), rep.getExpires_in()));
} else {
log.warn("更新监管平台token失败");
}
return token;
}


} }

Loading…
Cancel
Save