CZT
2023-08-05 7b817c0418cca12a7cb8852b63c135d9e1b9a20f
武汉军粮省平台-提交数据推送封装
已修改7个文件
已添加1个文件
523 ■■■■ 文件已修改
src/main/java/com/fzzy/api/service/ApiRemoteService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/push/whhpjl/WhjlPushService11.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/push/whhpjl/dto/WhjlReqDto.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/whjl/WhjlConstant.java 236 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/whjl/dto/WhjlApi1101.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/whjl/view/pr/WhjlApi1101PR.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/api/service/ApiRemoteService.java
@@ -35,6 +35,6 @@
     * @param data æŽ¨é€æ•°æ®
     * @return
     */
    public ResponseDto pushData(ApiParam param, ApiConfs confs,Object data);
    public ResponseDto pushData(ApiParam param, ApiConfs confs, Object data);
}
src/main/java/com/fzzy/push/whhpjl/Whjl2023HttpClientUtil.java
@@ -1,21 +1,15 @@
package com.fzzy.push.whhpjl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.fzzy.api.entity.ApiConfs;
import com.fzzy.api.utils.AESUtils;
import com.fzzy.api.utils.MyMD5Util;
import com.fzzy.api.utils.SnowflakeIdWorker;
import com.fzzy.push.gd2022.dto.GD2022AuthToken;
import com.fzzy.push.whhpjl.dto.WhjlReqDto;
import com.fzzy.push.whhpjl.dto.WhjlRespDto;
import lombok.extern.slf4j.Slf4j;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.lang.reflect.Type;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Map;
/**
 * æ­¦æ±‰å†›ç²®çœå¹³å°-上传数据服务类
@@ -28,13 +22,12 @@
    /**
     * post formData
     * @param url
     * @param map
     * @return
     * @throws Exception
     */
    @SuppressWarnings("resource")
    public static WhjlRespDto postGetToken(String url, Map<String, Object> map) throws Exception {
        log.info("---------接口请求地址:" +url+ "----------参数:" + JSON.toJSONString(map) +"---------");
    public static WhjlRespDto postPushData(String url, WhjlReqDto reqData , ApiConfs apiConfs) throws Exception {
        log.info("---------接口请求地址:" +url+ "----------参数:" + reqData +"---------");
        BufferedReader in = null;
        URL urls = new URL(url);
        HttpURLConnection connection = null;
@@ -42,6 +35,7 @@
        String rs = "";
        WhjlRespDto responseDto;
        try {
            connection = (HttpURLConnection) urls.openConnection();
            connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
            connection.setDoOutput(true);
@@ -53,87 +47,8 @@
            connection.setReadTimeout(30000);
            connection.setRequestMethod("POST");
            StringBuffer buffer = new StringBuffer();
            outputStream = connection.getOutputStream();
            buffer.append(JSON.toJSONString(map));
            outputStream.write(buffer.toString().getBytes());
            try {
                connection.connect();
                if (connection.getResponseCode() == 200) {
                    in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
                    String line = "";
                    while ((line = in.readLine()) != null) {
                        rs += line;
                    }
                }else{
                    log.error("http状态:" + connection.getResponseCode());
                    log.error("http消息:" + connection.getResponseMessage());
                }
            } catch (Exception e) {
                System.out.println("发生异常");
                log.error(e.getMessage(),e);
                rs = null;
                return new WhjlRespDto(99,e.getMessage());
            }
            log.info("---------接口返回:" + rs +"---------");
            Type type = new TypeReference<WhjlRespDto<GD2022AuthToken>>() {}.getType();
            responseDto = JSON.parseObject(rs,type);
            if(responseDto == null )   return new WhjlRespDto(99,"接口请求发生未知错误");
            return responseDto;
        } finally {
            try {
                outputStream.close();
                if (in != null){
                    in.close();
                }
            } catch (Exception e) {
            }
            outputStream = null;
            if (connection != null)
                connection.disconnect();
            connection = null;
        }
    }
    /**
     * post formData
     * @param url
     * @return
     * @throws Exception
     */
    @SuppressWarnings("resource")
    public static WhjlRespDto postPushData(String url, String data , ApiConfs apiConfs, GD2022AuthToken authToken) throws Exception {
        log.info("---------接口请求地址:" +url+ "----------参数:" + data +"---------");
        BufferedReader in = null;
        URL urls = new URL(url);
        HttpURLConnection connection = null;
        OutputStream outputStream = null;
        String rs = "";
        WhjlRespDto responseDto;
        try {
            String md = AESUtils.encrypt(data,apiConfs.getPublicKey());
            log.info("---------接口请求地址:" +url+ "----------密文参数:" + md +"---------");
            connection = (HttpURLConnection) urls.openConnection();
            connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
            connection.setDoOutput(true);
            connection.setDoInput(true);
            connection.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8");
            connection.setRequestProperty("Accept", "*/*");
            connection.setRequestProperty("Range", "bytes=" + "");
            connection.setRequestProperty("Authorization", "Bearer " + authToken.getAccess_token() );
            connection.setRequestProperty("nonce", AESUtils.encrypt(authToken.getAccess_token() + System.currentTimeMillis(),apiConfs.getPublicKey()));
            connection.setRequestProperty("requestId", AESUtils.encrypt(authToken.getAccess_token() + SnowflakeIdWorker.nextId(),apiConfs.getPublicKey()));
            connection.setRequestProperty("digest", MyMD5Util.encrypt(data));
            connection.setConnectTimeout(20000);
            connection.setReadTimeout(30000);
            connection.setRequestMethod("POST");
            StringBuffer buffer = new StringBuffer();
            buffer.append(md);
            outputStream = connection.getOutputStream();
            outputStream.write(buffer.toString().getBytes("UTF-8"));
            outputStream.write(reqData.toString().getBytes("UTF-8"));
            try {
                connection.connect();
                if (connection.getResponseCode() == 200) {
src/main/java/com/fzzy/push/whhpjl/WhjlApiRemoteService.java
@@ -8,9 +8,12 @@
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.api.service.ApiTriggerService;
import com.fzzy.api.utils.AESUtils;
import com.fzzy.api.utils.ContextUtil;
import com.fzzy.api.utils.MyMD5Util;
import com.fzzy.api.utils.RedisUtil;
import com.fzzy.api.view.repository.*;
import com.fzzy.push.whhpjl.dto.WhjlReqDto;
import com.fzzy.push.whhpjl.dto.WhjlRespDto;
import com.fzzy.whjl.WhjlConstant;
import lombok.Data;
@@ -18,9 +21,7 @@
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.*;
/**
 * æ­¦æ±‰å†›ç²®çœå¹³å°-上传数据服务类
@@ -56,22 +57,21 @@
    public ResponseDto pushData(ApiParam param, ApiConfs conf, Object data) {
        String inteId = param.getInteId();
        String kqdm = param.getKqdm();
        String bizId = param.getBizId();
        try {
            if (null == conf) {
                conf = apiCommonService.getConf(kqdm);
            }
            //添加LOGO
            //添加日志
            ApiLog apiLog = new ApiLog();
            apiLog.setId(ContextUtil.getUUID());
            apiLog.setInteId(inteId);
            String jsonData = getJsonData(inteId, data, conf.getApiUrl());
            log.info("报文信息=" + jsonData);
            String jsonData = getJsonData(inteId, data);
            log.info("数据报文信息=" + jsonData);
            inteId = getInteId(inteId);
            if (StringUtils.isEmpty(inteId)) {
                ResponseDto responseDto = new ResponseDto(99, "没有获取到接口", bizId);
                ResponseDto responseDto = new ResponseDto(99, "没有获取到接口");
                apiLog.setStatus(99);
                apiLog.setResult("没有获取到接口");
                apiLogRep.save(apiLog);
@@ -82,22 +82,44 @@
            apiLog.setUploadTime(new Date());
            if (conf == null) {
                ResponseDto responseDto = new ResponseDto(99, "没有获取到上传配置", bizId);
                ResponseDto responseDto = new ResponseDto(99, "没有获取到上传配置");
                apiLog.setStatus(99);
                apiLog.setResult("没有获取到上传配置");
                apiLogRep.save(apiLog);
                return responseDto;
            }
            //封装推送数据
            WhjlReqDto reqData = new WhjlReqDto();
            reqData.setId(ContextUtil.getUUID());
            reqData.setUid(conf.getKqdm());
            //TODO æŒ‡ä»¤id待确认
            reqData.setOrderid("");
            reqData.setAppcode(conf.getUserName());
            reqData.setTimestamp(ContextUtil.getCurTimeMillis());
            List<Object> list  = (List<Object>)data;
            reqData.setDatalength(list.size());
            //数据进行SM4加密
            reqData.setData(AESUtils.encrypt(jsonData, conf.getPublicKey()));
            reqData.setOperator("insert");
            //摘要,数据主体的MD5值
            reqData.setDigst(MyMD5Util.encrypt(jsonData));
            //身份签名,对应用码_授权码_站点编码_报文ID_时间戳进行MD5算法签名
            StringBuffer buffer = new StringBuffer();
            buffer.append(reqData.getAppcode()).append("_");
            buffer.append(conf.getPublicKey()).append("_");
            buffer.append(conf.getKqmc()).append("_");
            buffer.append(reqData.getId()).append("_");
            buffer.append(reqData.getTimestamp());
            reqData.setDigst(MyMD5Util.encrypt(buffer.toString()));
            Map<String, Object> map = new HashMap<>();
            WhjlRespDto responseDto = Whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, jsonData, conf, null);
            WhjlRespDto responseDto = Whjl2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, reqData, conf);
            apiLog.setStatus(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
            apiLog.setResult(responseDto.getResult());
            apiLogRep.save(apiLog);
            ResponseDto resd = new ResponseDto();
            resd.setSuccess(responseDto.getCode() == 200 ? 0 : responseDto.getCode());
            resd.setMsg(responseDto.getResult());
            //updateGD2022AuthToken(responseDto,conf, token);
            return resd;
        } catch (Exception e) {
            log.error(e.getMessage(), e);
@@ -113,7 +135,7 @@
     * @return
     * @throws Exception
     */
    private String getJsonData(String inteId, Object data, String url) {
    private String getJsonData(String inteId, Object data) {
        return JSON.toJSONString(data);
    }
src/main/java/com/fzzy/push/whhpjl/WhjlPushService11.java
@@ -1,6 +1,5 @@
package com.fzzy.push.whhpjl;
import com.fzzy.api.Constant;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.data.PushProtocol;
import com.fzzy.api.dto.ResponseDto;
@@ -9,6 +8,7 @@
import com.fzzy.whjl.WhjlConstant;
import com.fzzy.whjl.dto.WhjlApi1101;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
@@ -65,19 +65,20 @@
        if (null == items || items.isEmpty()) {
            return;
        }
        param.setInteCategory(WhjlConstant.API_CATEGORY_11);
        param.setInteId(WhjlConstant.API_CODE_1101);
        ResponseDto responseDto;
        for (WhjlApi1101 data : items) {
            param.setBizId(data.getBizId());
            responseDto = apiRemoteService.pushData(param, data);
            if (responseDto.getSuccess() == 0) {
                if (Constant.CZBZ_I.equals(data.getCzbz())) {
                    //TODO æ›´æ–°æ“ä½œæ ‡å¿—状态
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, items);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            WhjlApi1101 d;
            for (WhjlApi1101 data : items) {
                d = new WhjlApi1101();
                BeanUtils.copyProperties(data, d);
                if("i".equals(d.getCzbz())){
                    d.setCzbz("u");
                    //TODO æ›´æ–°çŠ¶æ€ï¼Œå¾…å®žçŽ°
                }
            }
src/main/java/com/fzzy/push/whhpjl/dto/WhjlReqDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,64 @@
package com.fzzy.push.whhpjl.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * æ­¦æ±‰å†›ç²®çœå¹³å°-推送数据封装
 * @author czt
 * @date 2023/08/05
 */
@Data
public class WhjlReqDto<T> implements Serializable {
    /**
     * æŠ¥æ–‡è¡¨ç¤ºid
     */
    private String id;
    /**
     * èº«ä»½id
     */
    private String uid;
    /**
     * æŒ‡ä»¤id
     */
    private String orderid;
    /**
     * åº”用码
     */
    private String appcode;
    /**
     * æ—¶é—´æˆ³
     */
    private String timestamp;
    /**
     * èº«ä»½ç­¾å
     */
    private String accesstoken;
    /**
     * æ•°æ®æ€»æ¡æ•°
     */
    private Integer datalength;
    /**
     * ä¸Šä¼ æ•°æ®(集合形式)
     */
    private String data;
    /**
     * æ•°æ®æ‘˜è¦
     */
    private String digst;
    /**
     * æ“ä½œç±»åž‹
     */
    private String operator;
}
src/main/java/com/fzzy/whjl/WhjlConstant.java
@@ -1,23 +1,13 @@
package com.fzzy.whjl;
/**
 * å…¨å±€é™æ€ç±»
 * æ­¦æ±‰å†›ç²®çœå¹³å°--全局静态类
 */
public class WhjlConstant {
    public static final String API_BIZ_TYPE = "JL";
    public static final String DEFAULT_CODE = "0";
    public static final String YN_N = "N";
    public static final String YN_Y = "Y";
    public static final String APP_NAME = "API";
    /**
     * é»˜è®¤é¡¶çº§èŠ‚ç‚¹ç¼–ç 
     */
    public static final String DEFAULT_PARENT_CODE = "0";
    public static String YMDHMS = "yyyy-MM-dd HH:mm:ss";
    /*----------接口分类----------*/
    /**
     * æŽ¥å£åˆ†ç±»-基础信息(军粮企业、仓储设施设备)
     */
@@ -35,6 +25,7 @@
     */
    public static String API_CATEGORY_14 = "14";
    /*----------接口编码----------*/
    /**
     * æŽ¥å£ç¼–码-1101 å†›ç²®ä¼ä¸šä¿¡æ¯æ•°æ®æŽ¥å£
     */
@@ -91,7 +82,6 @@
     * æŽ¥å£ç¼–码-1114 ä»“储设备报废记录数据接口
     */
    public static String API_CODE_1114 = "1114";
    /**
     * æŽ¥å£ç¼–码-1201 å‰¯é£Ÿä¾›åº”商信息数据接口
     */
@@ -144,7 +134,6 @@
     * æŽ¥å£ç¼–码-1213 å‡ºå…¥åº“记录数据接口
     */
    public static String API_CODE_1213 = "1213";
    /**
     * æŽ¥å£ç¼–码-1301 è´¨æ£€æœºæž„数据接口
     */
@@ -161,7 +150,6 @@
     * æŽ¥å£ç¼–码-1304 èƒ½è€—记录数据接口
     */
    public static String API_CODE_1304 = "1304";
    /**
     * æŽ¥å£ç¼–码-1401 åŠ¨å‘˜ä¼ä¸šæ•°æ®æŽ¥å£
     */
@@ -192,147 +180,81 @@
    public static String API_CODE_1407 = "1407";
    /*----------接口路径----------*/
    /**
     * æŽ¥å£ç¼–码-1001 å†›ç²®ä¼ä¸šä¿¡æ¯æŽ¥å£
     */
    public static String API_CODE_JLQYXX = "JLQYXX";   //接口编码-1101 å†›ç²®ä¼ä¸šä¿¡æ¯     --路径(JLQYXX)
    public static String API_CODE_JLZDXX = "JLZDXX";   //接口编码-1102 å†›ä¾›ç«™ç‚¹ä¿¡æ¯     --路径(JLZDXX)
    public static String API_CODE_JLRYXX = "JLRYXX";   //接口编码-1103 å†›ç²®äººå‘˜ä¿¡æ¯     --路径(JLRYXX)
    public static String API_CODE_FXLYD = "FXLYD";   //接口编码-1104 æ”¾å¿ƒç²®æ²¹åº—       --路径(FXLYD)
    public static String API_CODE_CFXX = "CFXX";   //接口编码-1105 ä»“房信息         --路径(CFXX)
    public static String API_CODE_AJXX = "AJXX";   //接口编码-1106 å»’间信息         --路径(AJXX)
    public static String API_CODE_HWXX = "HWXX";   //接口编码-1107 è´§ä½ä¿¡æ¯         --路径(HWXX)
    public static String API_CODE_CCSSDZDA = "CCSSDZDA";   //接口编码-1108 ä»“储设施电子档案 --路径(CCSSDZDA)
    public static String API_CODE_CCSSWHJL = "CCSSWHJL";   //接口编码-1109 ä»“储设施维护记录 --路径(CCSSWHJL)
    public static String API_CODE_CCSSBFJL = "CCSSBFJL";   //接口编码-1110 ä»“储设备报废记录 --路径(CCSBBFJL)
    public static String API_CODE_CCSBXX = "CCSBXX";   //接口编码-1111 ä»“储设备信息     --路径(CCSBXX)
    public static String API_CODE_CCSBWHJL = "CCSBWHJL";   //接口编码-1112 ä»“储设备维护记录 --路径(CCSBWHJL)
    public static String API_CODE_CCSBWXJL = "CCSBWXJL";   //接口编码-1113 ä»“储设备维修记录 --路径(CCSBWXJL)
    public static String API_CODE_CCSBBFJL = "CCSBBFJL";   //接口编码-1114 ä»“储设备报废记录 --路径(CCSBBFJL)
    public static String API_CODE_FSGYSXX = "FSGYSXX";   //接口编码-1201 å‰¯é£Ÿä¾›åº”商信息   --路径(FSGYSXX)
    public static String API_CODE_FSPPXX = "FSPPXX";   //接口编码-1202 å‰¯é£Ÿå“ç‰Œä¿¡æ¯     --路径(FSPPXX)
    public static String API_CODE_FSCPXX = "FSCPXX";   //接口编码-1203 å‰¯é£Ÿäº§å“ä¿¡æ¯     --路径(FSCPXX)
    public static String API_CODE_KHXX = "KHXX";   //接口编码-1204 å®¢æˆ·ä¿¡æ¯         --路径(KHXX)
    public static String API_CODE_CCJL = "CCJL";   //接口编码-1205 ç­¹æŽªè®¡åˆ’         --路径(CCJL)
    public static String API_CODE_DDXX = "DDXX";   //接口编码-1206 è®¢å•信息         --路径(DDXX)
    public static String API_CODE_HTXX = "HTXX";   //接口编码-1207 åˆåŒä¿¡æ¯         --路径(HTXX)
    public static String API_CODE_KCTZ = "KCTZ";   //接口编码-1208 åº“存台账         --路径(KCTZ)
    public static String API_CODE_KCTZPCXX = "KCTZPCXX";   //接口编码-1209 åº“存台账产品批次 --路径(KCTZPCXX)
    public static String API_CODE_KCTZCRJL = "KCTZCRJL";   //接口编码-1210 åº“存台账出入记录 --路径(KCTZCRJL)
    public static String API_CODE_KCPDJL = "KCPDJL";   //接口编码-1211 åº“存盘点记录     --路径(KCPDJL)
    public static String API_CODE_KNZCJL = "KNZCJL";   //接口编码-1212 åº“内转仓记录     --路径(KNZCJL)
    public static String API_CODE_CRKJL = "CRKJL";   //接口编码-1213 å‡ºå…¥åº“记录       --路径(CRKJL)
    public static String API_CODE_ZJJG = "ZJJG";   //接口编码-1301 è´¨æ£€æœºæž„         --路径(ZJJG)
    public static String API_CODE_ZJBG = "ZJBG";   //接口编码-1302 è´¨æ£€æŠ¥å‘Š         --路径(ZJBG)
    public static String API_CODE_LQJCJL = "LQJCJL";   //接口编码-1303 ç²®æƒ…检测记录     --路径(LQJCJL)
    public static String API_CODE_NHJL = "NHJL";   //接口编码-1304 èƒ½è€—记录         --路径(NHJL)
    public static String API_CODE_DYQY = "DYQY";   //接口编码-1401 åŠ¨å‘˜ä¼ä¸š         --路径(DYQY)
    public static String API_CODE_DYXY = "DYXY";   //接口编码-1402 åŠ¨å‘˜åè®®         --路径(DYXY)
    public static String API_CODE_DYNL = "DYNL";   //接口编码-1403 åŠ¨å‘˜èƒ½åŠ›         --路径(DYNL)
    public static String API_CODE_DYYJ = "DYYJ";   //接口编码-1404 åŠ¨å‘˜é¢„è­¦         --路径(DYYJ)
    public static String API_CODE_SCJGDD = "SCJGDD";   //接口编码-1405 ç”Ÿäº§åŠ å·¥è®¢å•     --路径(SCJGDD)
    public static String API_CODE_YSLX = "YSLX";   //接口编码-1406 è¿è¾“路线         --路径(YSLX)
    public static String API_CODE_YJDD = "YJDD";   //接口编码-1407 åº”急调度         --路径(YJDD)
    /**
     * å›½æ ‡å‡ºå…¥åº“类型
     */
    public static String  INOUT_TYPE_14 = "14";
    public static String  INOUT_TYPE_2 = "2";
    public static String  INOUT_TYPE_15 = "15";
    public static String  INOUT_TYPE_1 = "1";
    /**
     * æ“ä½œæ ‡è®°
     */
    public static String CZBZ_D = "d";
    public static String CZBZ_I = "i";
    public static String CZBZ_U = "u";
    /**
     * å›¾ç‰‡ç±»åž‹
     */
    public static String IMG_NAME_TYPE_PMT = "PMT";
    public static String IMG_NAME_TYPE_GL = "GL";
    public static String IMG_NAME_TYPE_GR = "GR";
    public static String IMG_NAME_TYPE_GT = "GT";
    public static String IMG_NAME_TYPE_TL = "TL";
    public static String IMG_NAME_TYPE_TR = "TR";
    public static String IMG_NAME_TYPE_TT = "TT";
    public static String IMG_NAME_TYPE_SL = "SL";
    public static String IMG_NAME_TYPE_SF = "SF";
    /**
     * å­—典父编码-操作标志
     */
    public static String TRIGGER_P_CZBZ = "CZBZ";
    /**
     * å­—典父编码-是否
     */
    public static String TRIGGER_P_YN = "YN";
    /**
     * æŽ¥å£1201-合同 -业务类型
     */
    public static String TRIGGER_P_HT_YWLX = "HT_YWLX";
    /**
     * æŽ¥å£1201-客户类型
     */
    public static String TRIGGER_P_KHLX = "KHLX";
    /**
     * æŽ¥å£1201-结算与合同一 è‡´æ€§
     */
    public static String TRIGGER_P_JSYHTYZX = "JSYHTYZX";
    /**
     * æŽ¥å£1201-开户行
     */
    public static String TRIGGER_P_BANK = "BANK";
    /**
     * è´§ä½çŠ¶æ€
     */
    public static String TRIGGER_P_HWZT = "HWZT";
    /**
     * å›½åˆ«
     */
    public static String TRIGGER_P_GB = "GB";
    /**
     * ç²®é£Ÿå“ç§
     */
    public static String TRIGGER_P_LSPZ = "LSPZ";
    /**
     * ç²®é£Ÿå“ç§
     */
    public static String TRIGGER_P_LSDJ = "LSDJ";
    /**
     * ç²®é£Ÿæ€§è´¨
     */
    public static String  TRIGGER_P_LSXZ = "LSXZ";
    /**
     * ç»“算方式
     */
    public static String  TRIGGER_P_JSFS = "JSFS";
    /**
     * ç»„织部门类型
     */
    public static String DEPT_TYPE_10 = "10";
//    public static String DEPT_TYPE_11 = "11";
    public static String DEPT_TYPE_20 = "20";
    public static String DEPT_TYPE_30 = "30";
    /**
     * é»˜è®¤ç”¨æˆ·å¯†ç ï¼Œç”¨æˆ·ç»´æŠ¤é‡ç½®å¯†ç ä½¿ç”¨
     */
    public static final String DEFAULT_USER_PASSWORD = "123456";
    //接口编码-1101 å†›ç²®ä¼ä¸šä¿¡æ¯ --路径(JLQYXX)
    public static String API_CODE_JLQYXX = "JLQYXX";
    //接口编码-1102 å†›ä¾›ç«™ç‚¹ä¿¡æ¯ --路径(JLZDXX)
    public static String API_CODE_JLZDXX = "JLZDXX";
    //接口编码-1103 å†›ç²®äººå‘˜ä¿¡æ¯ --路径(JLRYXX)
    public static String API_CODE_JLRYXX = "JLRYXX";
    //接口编码-1104 æ”¾å¿ƒç²®æ²¹åº— --路径(FXLYD)
    public static String API_CODE_FXLYD = "FXLYD";
    //接口编码-1105 ä»“房信息 --路径(CFXX)
    public static String API_CODE_CFXX = "CFXX";
    //接口编码-1106 å»’间信息 --路径(AJXX)
    public static String API_CODE_AJXX = "AJXX";
    //接口编码-1107 è´§ä½ä¿¡æ¯ --路径(HWXX)
    public static String API_CODE_HWXX = "HWXX";
    //接口编码-1108 ä»“储设施电子档案 --路径(CCSSDZDA)
    public static String API_CODE_CCSSDZDA = "CCSSDZDA";
    //接口编码-1109 ä»“储设施维护记录 --路径(CCSSWHJL)
    public static String API_CODE_CCSSWHJL = "CCSSWHJL";
    //接口编码-1110 ä»“储设备报废记录 --路径(CCSBBFJL)
    public static String API_CODE_CCSSBFJL = "CCSSBFJL";
    //接口编码-1111 ä»“储设备信息 --路径(CCSBXX)
    public static String API_CODE_CCSBXX = "CCSBXX";
    //接口编码-1112 ä»“储设备维护记录 --路径(CCSBWHJL)
    public static String API_CODE_CCSBWHJL = "CCSBWHJL";
    //接口编码-1113 ä»“储设备维修记录 --路径(CCSBWXJL)
    public static String API_CODE_CCSBWXJL = "CCSBWXJL";
    //接口编码-1114 ä»“储设备报废记录 --路径(CCSBBFJL)
    public static String API_CODE_CCSBBFJL = "CCSBBFJL";
    //接口编码-1201 å‰¯é£Ÿä¾›åº”商信息 --路径(FSGYSXX)
    public static String API_CODE_FSGYSXX = "FSGYSXX";
    //接口编码-1202 å‰¯é£Ÿå“ç‰Œä¿¡æ¯ --路径(FSPPXX)
    public static String API_CODE_FSPPXX = "FSPPXX";
    //接口编码-1203 å‰¯é£Ÿäº§å“ä¿¡æ¯ --路径(FSCPXX)
    public static String API_CODE_FSCPXX = "FSCPXX";
    //接口编码-1204 å®¢æˆ·ä¿¡æ¯ --路径(KHXX)
    public static String API_CODE_KHXX = "KHXX";
    //接口编码-1205 ç­¹æŽªè®¡åˆ’ --路径(CCJL)
    public static String API_CODE_CCJL = "CCJL";
    //接口编码-1206 è®¢å•信息 --路径(DDXX)
    public static String API_CODE_DDXX = "DDXX";
    //接口编码-1207 åˆåŒä¿¡æ¯ --路径(HTXX)
    public static String API_CODE_HTXX = "HTXX";
    //接口编码-1208 åº“存台账 --路径(KCTZ)
    public static String API_CODE_KCTZ = "KCTZ";
    //接口编码-1209 åº“存台账产品批次 --路径(KCTZPCXX)
    public static String API_CODE_KCTZPCXX = "KCTZPCXX";
    //接口编码-1210 åº“存台账出入记录 --路径(KCTZCRJL)
    public static String API_CODE_KCTZCRJL = "KCTZCRJL";
    //接口编码-1211 åº“存盘点记录 --路径(KCPDJL)
    public static String API_CODE_KCPDJL = "KCPDJL";
    //接口编码-1212 åº“内转仓记录 --路径(KNZCJL)
    public static String API_CODE_KNZCJL = "KNZCJL";
    //接口编码-1213 å‡ºå…¥åº“记录 --路径(CRKJL)
    public static String API_CODE_CRKJL = "CRKJL";
    //接口编码-1301 è´¨æ£€æœºæž„ --路径(ZJJG)
    public static String API_CODE_ZJJG = "ZJJG";
    //接口编码-1302 è´¨æ£€æŠ¥å‘Š --路径(ZJBG)
    public static String API_CODE_ZJBG = "ZJBG";
    //接口编码-1303 ç²®æƒ…检测记录 --路径(LQJCJL)
    public static String API_CODE_LQJCJL = "LQJCJL";
    //接口编码-1304 èƒ½è€—记录 --路径(NHJL)
    public static String API_CODE_NHJL = "NHJL";
    //接口编码-1401 åŠ¨å‘˜ä¼ä¸š --路径(DYQY)
    public static String API_CODE_DYQY = "DYQY";
    //接口编码-1402 åŠ¨å‘˜åè®® --路径(DYXY)
    public static String API_CODE_DYXY = "DYXY";
    //接口编码-1403 åŠ¨å‘˜èƒ½åŠ› --路径(DYNL)
    public static String API_CODE_DYNL = "DYNL";
    //接口编码-1404 åŠ¨å‘˜é¢„è­¦ --路径(DYYJ)
    public static String API_CODE_DYYJ = "DYYJ";
    //接口编码-1405 ç”Ÿäº§åŠ å·¥è®¢å• --路径(SCJGDD)
    public static String API_CODE_SCJGDD = "SCJGDD";
    //接口编码-1406 è¿è¾“路线 --路径(YSLX)
    public static String API_CODE_YSLX = "YSLX";
    //接口编码-1407 åº”急调度 --路径(YJDD)
    public static String API_CODE_YJDD = "YJDD";
}
src/main/java/com/fzzy/whjl/dto/WhjlApi1101.java
@@ -1,5 +1,6 @@
package com.fzzy.whjl.dto;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
@@ -51,7 +52,13 @@
    private String sfyx;  //是否启用
    private String bz;  //备注
    //单独增加,不进行上传
    @JSONField(serialize = false)
    private String bizId;  //业务ID
    @JSONField(serialize = false)
    private Date updateTime;  //最后更新时间
    @JSONField(serialize = false)
    private String czbz;  //操作标志
    @JSONField(serialize = false)
    private String kqdm;  //库区代码
}
src/main/java/com/fzzy/whjl/view/pr/WhjlApi1101PR.java
@@ -3,9 +3,17 @@
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.fzzy.api.Constant;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.dto.ResponseDto;
import com.fzzy.api.entity.ApiConfs;
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.service.ApiPushManager;
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.whjl.dto.WhjlApi1101;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
/**
@@ -15,6 +23,11 @@
 */
@Component
public class WhjlApi1101PR {
    @Autowired
    private ApiCommonService apiCommonService;
    @Autowired
    private ApiPushManager apiPushManager;
    /**
     * èŽ·å–åˆ—è¡¨ä¿¡æ¯
@@ -60,6 +73,37 @@
     */
    @Expose
    public String pushData(List<WhjlApi1101> items) {
        return null;
        ResponseDto responseDto;
        String result = "";
        String kqdm = items.get(0).getKqdm();
        ApiConfs apiConf = apiCommonService.getConf(kqdm);
        if (null == apiConf) return "系统没有获取到当前库区配置信息,执行失败";
        //封装参数
        ApiParam param = new ApiParam(apiConf, Constant.API_CATEGORY_11, Constant.API_CODE_1403);
        //获取实现接口
        ApiRemoteService apiService = apiPushManager.getApiRemoteService(param.getPushProtocol());
        if (null == apiService) return "系统没有当前推送协议配置,执行失败";
        //推送,数据为集合形式
        responseDto = apiService.pushData(param, apiConf, items);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            WhjlApi1101 d;
            for (WhjlApi1101 data : items) {
                d = new WhjlApi1101();
                BeanUtils.copyProperties(data, d);
                if("i".equals(d.getCzbz())){
                    d.setCzbz("u");
                    //TODO æ›´æ–°çŠ¶æ€ï¼Œå¾…å®žçŽ°
                }
            }
            result += responseDto.toString();
        }
        return result;
    }
}