package com.fzzy.push.nx2023;
|
|
import com.alibaba.fastjson.JSON;
|
import com.fzzy.api.Constant;
|
import com.fzzy.api.data.ApiParam;
|
import com.fzzy.api.data.PushProtocol;
|
import com.fzzy.api.dto.ResponseDto;
|
import com.fzzy.api.entity.*;
|
import com.fzzy.api.service.ApiCommonService;
|
import com.fzzy.api.service.ApiRemoteService;
|
import com.fzzy.api.service.ApiTriggerService;
|
import com.fzzy.api.utils.*;
|
import com.fzzy.api.view.repository.*;
|
import com.fzzy.push.nx2023.dto.*;
|
import lombok.Data;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.time.DateFormatUtils;
|
import org.apache.commons.lang.time.DateUtils;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import java.lang.reflect.Field;
|
import java.util.*;
|
|
/**
|
* 宁夏省平台2023版-上传数据服务类
|
*
|
* @author czt
|
* @date 2023/11/09
|
*/
|
@Slf4j
|
@Data
|
@Service
|
public class NX2023ApiRemoteService implements ApiRemoteService {
|
|
@Autowired
|
private RedisUtil redisUtil;
|
@Autowired
|
private ApiCommonService apiCommonService;
|
@Autowired
|
private ApiTriggerService apiTriggerService;
|
@Autowired
|
private ApiLogRep apiLogRep;
|
@Autowired
|
private Api1101Rep api1101Rep;
|
@Autowired
|
private Api1102Rep api1102Rep;
|
@Autowired
|
private Api1104Rep api1104Rep;
|
@Autowired
|
private Api1208Rep api1208Rep;
|
@Autowired
|
private Api1109Rep api1109Rep;
|
@Autowired
|
private Api1202Rep api1202Rep;
|
@Autowired
|
private Api1205Rep api1205Rep;
|
@Autowired
|
private Api1404Rep api1404Rep;
|
|
@Override
|
public String getProtocol() {
|
return PushProtocol.SB_NX_2023.getCode();
|
}
|
|
@Override
|
public ResponseDto pushData(ApiParam param, Object data) {
|
return pushData(param, null, data);
|
}
|
|
@Override
|
public ResponseDto pushData(ApiParam param, ApiConfs conf, Object data) {
|
String kqdm = param.getKqdm();
|
|
try {
|
if (null == conf) {
|
conf = apiCommonService.getConf(kqdm);
|
}
|
|
//添加日志
|
ApiLog apiLog = new ApiLog();
|
apiLog.setId(ContextUtil.getUUID());
|
if (StringUtils.isEmpty(param.getInteId())) {
|
ResponseDto responseDto = new ResponseDto(99, "没有获取到接口");
|
apiLog.setStatus(99);
|
apiLog.setResult("没有获取到接口");
|
apiLogRep.save(apiLog);
|
return responseDto;
|
}
|
apiLog.setInteId(param.getInteId());
|
|
//获取接口编码
|
String inteId = this.getInteId(param.getInteId());
|
//获取JSON报文
|
String jsonData = getJsonData(param.getInteId(), data);
|
log.info("接口数据信息=" + jsonData);
|
apiLog.setData(jsonData);
|
apiLog.setKqdm(kqdm);
|
apiLog.setUploadTime(new Date());
|
|
if (conf == null) {
|
ResponseDto responseDto = new ResponseDto(99, "没有获取到上传配置");
|
apiLog.setStatus(99);
|
apiLog.setResult("没有获取到上传配置");
|
apiLogRep.save(apiLog);
|
return responseDto;
|
}
|
|
//封装推送数据
|
Nx2023ReqDto reqData = new Nx2023ReqDto();
|
reqData.setId(ContextUtil.getUUID());
|
//获取身份ID,即粮库的组织代码
|
reqData.setUid(conf.getUserName());
|
//指令id
|
String key = RedisConst.buildKey(RedisConst.KYE_ORDER, conf.getKqdm());
|
String orderId = (String) redisUtil.get(key);
|
if (StringUtils.isEmpty(orderId)) {
|
orderId = reqData.getId();
|
}
|
reqData.setOrderid(orderId);
|
|
//身份签名,使用自有RSA私钥进行加密(库区编码_当天日期)
|
reqData.setAccess_token(NxRSAUtils.sign(reqData.getUid() + "_" + DateFormatUtils.format(new Date(), "yyyy-MM-dd"), conf.getPassword()));
|
reqData.setDatalength(1);
|
|
//使用省平台的RSA公钥对数据进行RSA加密
|
reqData.setData(NxRSAUtils.encryptByPubKey(jsonData, conf.getPublicKey()));
|
//摘要,数据主体的MD5值
|
reqData.setDigst(MyMD5Util.encrypt(jsonData));
|
log.info("上报数据信息=" + JSON.toJSONString(reqData));
|
Nx2023RespDto responseDto = NX2023HttpClientUtil.postPushData(conf.getApiUrl() + inteId, JSON.toJSONString(reqData));
|
|
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());
|
|
return resd;
|
} catch (Exception e) {
|
log.error(e.getMessage(), e);
|
return new ResponseDto(99, e.getMessage());
|
}
|
}
|
|
/**
|
* 转为JSON
|
*
|
* @param inteId
|
* @param data
|
* @return
|
*/
|
private String getJsonData(String inteId, Object data) {
|
List<Object> list = new ArrayList<>();
|
Object object = getJsonApiData(inteId, data);
|
|
//除库存接口外,其他接口上传前更新最后更新时间
|
if (!Constant.API_CODE_1208.equals(inteId)) {
|
setZhgxsjValue(data);
|
}
|
|
list.add(object);
|
return JSON.toJSONString(list);
|
}
|
|
/**
|
* 常规接口封装
|
*
|
* @param inteId
|
* @param data
|
* @return
|
*/
|
private Object getJsonApiData(String inteId, Object data) {
|
if (Constant.API_CODE_1101.equals(inteId)) {
|
Nx2023Api1101 api1101 = new Nx2023Api1101();
|
BeanUtils.copyProperties(data, api1101);
|
//设置上级单位统一编码
|
if (StringUtils.isEmpty(api1101.getSjdwtybm()) && StringUtils.isNotEmpty(api1101.getSjdwdm())) {
|
String sjdwtybm = apiCommonService.getTydwbm(api1101.getDwdm());
|
api1101.setSjdwtybm(sjdwtybm);
|
}
|
return api1101;
|
}
|
if (Constant.API_CODE_1102.equals(inteId)) {
|
Nx2023Api1102 api1102 = new Nx2023Api1102();
|
BeanUtils.copyProperties(data, api1102);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1102.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1102.getDwdm());
|
api1102.setTydwbm(tydwbm);
|
}
|
return api1102;
|
}
|
if (Constant.API_CODE_1103.equals(inteId)) {
|
Nx2023Api1103 api1103 = new Nx2023Api1103();
|
BeanUtils.copyProperties(data, api1103);
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1103.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1103.getKqdm());
|
api1103.setTykqbm(tykqbm);
|
}
|
return api1103;
|
}
|
if (Constant.API_CODE_1104.equals(inteId)) {
|
Nx2023Api1104 api1104 = new Nx2023Api1104();
|
BeanUtils.copyProperties(data, api1104);
|
//设置统一仓房编码
|
if (StringUtils.isEmpty(api1104.getTycfbm())) {
|
String tycfbm = apiCommonService.getTycfbm(api1104.getCfbh());
|
api1104.setTycfbm(tycfbm);
|
}
|
return api1104;
|
}
|
if (Constant.API_CODE_1105.equals(inteId)) {
|
Nx2023Api1105 api1105 = new Nx2023Api1105();
|
BeanUtils.copyProperties(data, api1105);
|
//设置统一廒间编码
|
if (StringUtils.isEmpty(api1105.getTyajbm())) {
|
String tyajbm = apiCommonService.getTyajbm(api1105.getAjdm());
|
api1105.setTyajbm(tyajbm);
|
}
|
return api1105;
|
}
|
if (Constant.API_CODE_1106.equals(inteId)) {
|
Nx2023Api1106 api1106 = new Nx2023Api1106();
|
BeanUtils.copyProperties(data, api1106);
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1106.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1106.getKqdm());
|
api1106.setTykqbm(tykqbm);
|
}
|
return api1106;
|
}
|
if (Constant.API_CODE_1107.equals(inteId)) {
|
Nx2023Api1107 api1107 = new Nx2023Api1107();
|
BeanUtils.copyProperties(data, api1107);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1107.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1107.getDwdm());
|
api1107.setTydwbm(tydwbm);
|
}
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1107.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1107.getKqdm());
|
api1107.setTykqbm(tykqbm);
|
}
|
return api1107;
|
}
|
if (Constant.API_CODE_1108.equals(inteId)) {
|
Nx2023Api1108 api1108 = new Nx2023Api1108();
|
BeanUtils.copyProperties(data, api1108);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1108.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1108.getDwdm());
|
api1108.setTydwbm(tydwbm);
|
}
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1108.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1108.getKqdm());
|
api1108.setTykqbm(tykqbm);
|
}
|
//设置统一药剂编码
|
api1108.setTyyjbh(api1108.getYjbh().replace(api1108.getKqdm(), api1108.getTykqbm()));
|
return api1108;
|
}
|
if (Constant.API_CODE_1109.equals(inteId)) {
|
Nx2023Api1109 api1109 = new Nx2023Api1109();
|
Api1109 apiData = (Api1109) data;
|
BeanUtils.copyProperties(apiData, api1109);
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1109.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1109.getKqdm());
|
api1109.setTykqbm(tykqbm);
|
}
|
//设置文件名称:统一库区编码_
|
if (api1109.getWjmc().startsWith(api1109.getKqdm())) {
|
api1109.setWjmc(api1109.getWjmc().replace(api1109.getKqdm(), api1109.getTykqbm()));
|
}
|
//设置文件路径
|
api1109.setWjlj("V2024/2409/" + api1109.getTykqbm() + "/" + api1109.getWjlx() + "/" + api1109.getWjmc());
|
|
Map<String, String> map = new HashMap<>();
|
map.put(apiData.getWjmc(), FileUtils.fileToByteString(apiData.getWjdz()));
|
api1109.setWjl(JSON.toJSONString(map));
|
|
return api1109;
|
}
|
if (Constant.API_CODE_1110.equals(inteId)) {
|
Nx2023Api1110 api1110 = new Nx2023Api1110();
|
BeanUtils.copyProperties(data, api1110);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1110.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1110.getDwdm());
|
api1110.setTydwbm(tydwbm);
|
}
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1110.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1110.getKqdm());
|
api1110.setTykqbm(tykqbm);
|
}
|
//设置统一货位编码
|
if (StringUtils.isEmpty(api1110.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1110.getHwdm());
|
api1110.setTyhwbm(tyhwbm);
|
}
|
return api1110;
|
}
|
if (Constant.API_CODE_1111.equals(inteId)) {
|
Nx2023Api1111 api1111 = new Nx2023Api1111();
|
BeanUtils.copyProperties(data, api1111);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1111.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1111.getDwdm());
|
api1111.setTydwbm(tydwbm);
|
}
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1111.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1111.getKqdm());
|
api1111.setTykqbm(tykqbm);
|
}
|
return api1111;
|
}
|
if (Constant.API_CODE_1112.equals(inteId)) {
|
Nx2023Api1112 api1112 = new Nx2023Api1112();
|
BeanUtils.copyProperties(data, api1112);
|
//设置统一单位编码
|
if (StringUtils.isEmpty(api1112.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1112.getDwdm());
|
api1112.setTydwbm(tydwbm);
|
}
|
//设置统一库区编码
|
if (StringUtils.isEmpty(api1112.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1112.getKqdm());
|
api1112.setTykqbm(tykqbm);
|
}
|
return api1112;
|
}
|
if (Constant.API_CODE_1201.equals(inteId)) {
|
Api1201 apiData = (Api1201) data;
|
Nx2023Api1201 api1201 = new Nx2023Api1201();
|
BeanUtils.copyProperties(apiData, api1201);
|
//设置統一单位编码
|
if (StringUtils.isEmpty(api1201.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1201.getDwdm());
|
api1201.setTydwbm(tydwbm);
|
}
|
if (StringUtils.isEmpty(api1201.getHtzl())) {
|
api1201.setHtzl(api1201.getYwlx());
|
}
|
//设置合同号:统一库区编码加三维顺序号
|
if (StringUtils.isEmpty(api1201.getTyhth())) {
|
api1201.setTyhth(api1201.getHth().replace(api1201.getDwdm(), api1201.getTydwbm()));
|
}
|
if (StringUtils.isEmpty(api1201.getYsfs())) {
|
api1201.setYsfs("根据到货数量进行验收");
|
}
|
if (StringUtils.isEmpty(api1201.getFkfs())) {
|
api1201.setFkfs("4");
|
}
|
return api1201;
|
}
|
if (Constant.API_CODE_1202.equals(inteId)) {
|
Nx2023Api1202 api1202 = new Nx2023Api1202();
|
BeanUtils.copyProperties(data, api1202);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1202.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1202.getHwdm());
|
api1202.setTyhwbm(tyhwbm);
|
}
|
//设置粮权单位統一编码
|
if (StringUtils.isEmpty(api1202.getLqgsdwtybm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1202.getHwdm().substring(0, 18));
|
api1202.setLqgsdwtybm(tydwbm);
|
}
|
//判断计划明细号,不为空
|
if (StringUtils.isNotEmpty(api1202.getJhmxh())) {
|
Api1404 api1404 = api1404Rep.getOneDataByJhmxdh(api1202.getJhmxh());
|
//计划明细号:更换为轮换计划单号+统一库区编码+4为顺序号
|
if (api1404.getJhmxdh().startsWith(api1404.getLhjhdh() + api1404.getKqdm())) {
|
api1202.setJhmxh(api1404.getJhmxdh().replace(api1404.getLhjhdh() + api1404.getKqdm(), api1404.getLhjhdh() + api1202.getTyhwbm().substring(0, 22)));
|
}
|
}
|
//设置合同号:统一库区编码加三维顺序号
|
if (api1202.getHth().startsWith(api1202.getHwdm().substring(0, 21))) {
|
api1202.setHth(api1202.getHth().replace(api1202.getHwdm().substring(0, 21), api1202.getTyhwbm().substring(0, 22)));
|
}
|
//设置入库结算单号:统一库区编码+yyyyMMdd+三位顺序号
|
if (StringUtils.isEmpty(api1202.getTyrkjsdh())) {
|
api1202.setTyrkjsdh(api1202.getRkjsdh().replace(api1202.getHwdm().substring(0, 21), api1202.getTyhwbm().substring(0, 22)));
|
}
|
return api1202;
|
}
|
if (Constant.API_CODE_1203.equals(inteId)) {
|
Nx2023Api1203 api1203 = new Nx2023Api1203();
|
BeanUtils.copyProperties(data, api1203);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1203.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1203.getHwdm());
|
api1203.setTyhwbm(tyhwbm);
|
}
|
return api1203;
|
}
|
if (Constant.API_CODE_1204.equals(inteId)) {
|
Api1204 apiData = (Api1204) data;
|
Nx2023Api1204 api1204 = new Nx2023Api1204();
|
BeanUtils.copyProperties(apiData, api1204);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1204.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1204.getHwdm());
|
api1204.setTyhwbm(tyhwbm);
|
}
|
//设置入库结算单号:统一库区编码+yyyyMMdd+三位顺序号
|
if (StringUtils.isEmpty(api1204.getTyrkjsdh())) {
|
api1204.setTyrkjsdh(api1204.getRkjsdh().replace(apiData.getKqdm(), api1204.getTyhwbm().substring(0, 22)));
|
}
|
//设置合同号:统一库区编码加三维顺序号
|
if (api1204.getHth().startsWith(apiData.getKqdm().substring(0, 18))) {
|
api1204.setHth(api1204.getHth().replace(apiData.getKqdm().substring(0, 18), api1204.getTyhwbm().substring(0, 20)));
|
}
|
return api1204;
|
}
|
if (Constant.API_CODE_1205.equals(inteId)) {
|
Nx2023Api1205 api1205 = new Nx2023Api1205();
|
BeanUtils.copyProperties(data, api1205);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1205.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1205.getHwdm());
|
api1205.setTyhwbm(tyhwbm);
|
}
|
//判断计划明细号,不为空
|
if (StringUtils.isNotEmpty(api1205.getJhmxh())) {
|
Api1404 api1404 = api1404Rep.getOneDataByJhmxdh(api1205.getJhmxh());
|
//计划明细号:更换为轮换计划单号+统一库区编码+4为顺序号
|
if (api1404.getJhmxdh().startsWith(api1404.getLhjhdh() + api1404.getKqdm())) {
|
api1205.setJhmxh(api1404.getJhmxdh().replace(api1404.getLhjhdh() + api1404.getKqdm(), api1404.getLhjhdh() + api1205.getTyhwbm().substring(0, 22)));
|
}
|
}
|
//设置合同号:统一库区编码加三维顺序号
|
if (api1205.getHth().startsWith(api1205.getHwdm().substring(0, 21))) {
|
api1205.setHth(api1205.getHth().replace(api1205.getHwdm().substring(0, 21), api1205.getTyhwbm().substring(0, 22)));
|
}
|
//设置出库结算单号:统一库区编码+yyyyMMdd+三位顺序号
|
if (StringUtils.isEmpty(api1205.getTyckjsdh())) {
|
String tykqbm = apiCommonService.getTykqbm(api1205.getHwdm().substring(0, 21));
|
api1205.setTyckjsdh(api1205.getCkjsdh().replace(api1205.getHwdm().substring(0, 21), tykqbm));
|
}
|
return api1205;
|
}
|
if (Constant.API_CODE_1206.equals(inteId)) {
|
Api1206 apiData = (Api1206) data;
|
Nx2023Api1206 api1206 = new Nx2023Api1206();
|
BeanUtils.copyProperties(apiData, api1206);
|
//设置統一单位编码
|
if (StringUtils.isEmpty(api1206.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(apiData.getKqdm().substring(0, 18));
|
api1206.setTydwbm(tydwbm);
|
}
|
//设置出库结算单号:统一库区编码+yyyyMMdd+三位顺序号
|
if (StringUtils.isEmpty(api1206.getTyckjsdh())) {
|
String tykqbm = apiCommonService.getTykqbm(apiData.getKqdm());
|
api1206.setTyckjsdh(api1206.getCkjsdh().replace(apiData.getKqdm(), tykqbm));
|
}
|
return api1206;
|
}
|
if (Constant.API_CODE_1207.equals(inteId)) {
|
Nx2023Api1207 api1207 = new Nx2023Api1207();
|
BeanUtils.copyProperties(data, api1207);
|
//设置倒出库区统一编码
|
if (StringUtils.isEmpty(api1207.getDckqtybm())) {
|
String dckqtybm = apiCommonService.getTykqbm(api1207.getDcdw());
|
api1207.setDckqtybm(dckqtybm);
|
}
|
//设置倒入库区统一编码
|
if (StringUtils.isEmpty(api1207.getDrkqtybm())) {
|
String drkqtybm = apiCommonService.getTykqbm(api1207.getDrdw());
|
api1207.setDrkqtybm(drkqtybm);
|
}
|
//设置倒出货位统一编码
|
if (StringUtils.isEmpty(api1207.getDchwtybm())) {
|
String dchwtybm = apiCommonService.getTyhwbm(api1207.getDchwdm());
|
api1207.setDchwtybm(dchwtybm);
|
}
|
//设置倒入货位统一编码
|
if (StringUtils.isEmpty(api1207.getDrhwtybm())) {
|
String drhwtybm = apiCommonService.getTyhwbm(api1207.getDrhwdm());
|
api1207.setDrhwtybm(drhwtybm);
|
}
|
//设置倒仓单号:统一库区编码+yyyyMMdd+4位顺序号
|
if (StringUtils.isEmpty(api1207.getTydcdh())) {
|
String tykqbm = apiCommonService.getTykqbm(api1207.getDchwdm().substring(0, 21));
|
api1207.setTydcdh(api1207.getDcdh().replace(api1207.getDchwdm().substring(0, 21), tykqbm));
|
}
|
return api1207;
|
}
|
if (Constant.API_CODE_1208.equals(inteId)) {
|
Nx2023Api1208 api1208 = new Nx2023Api1208();
|
BeanUtils.copyProperties(data, api1208);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1208.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1208.getHwdm());
|
api1208.setTyhwbm(tyhwbm);
|
}
|
//设置粮权单位統一编码
|
if (StringUtils.isEmpty(api1208.getLqgstydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1208.getLqgsdwdm());
|
api1208.setLqgstydwbm(tydwbm);
|
}
|
return api1208;
|
}
|
if (Constant.API_CODE_1209.equals(inteId)) {
|
Api1209 apiData = (Api1209) data;
|
Nx2023Api1209 api1209 = new Nx2023Api1209();
|
BeanUtils.copyProperties(apiData, api1209);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1209.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1209.getHwdm());
|
api1209.setTyhwbm(tyhwbm);
|
}
|
//设置损益单号:统一货位编码+yyyyMMdd+3位顺序号
|
if (StringUtils.isEmpty(api1209.getTysydh())) {
|
api1209.setTysydh(api1209.getSydh().replace(api1209.getHwdm(), api1209.getTyhwbm()));
|
}
|
//实际损耗数量赋值
|
api1209.setSjsysl(apiData.getJzsysl());
|
return api1209;
|
}
|
if (Constant.API_CODE_1210.equals(inteId)) {
|
Nx2023Api1210 api1210 = new Nx2023Api1210();
|
BeanUtils.copyProperties(data, api1210);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1210.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1210.getHwdm());
|
api1210.setTyhwbm(tyhwbm);
|
}
|
//设置性质变更单号:统一货位编码+yyyyMMdd+3位顺序号
|
if (StringUtils.isEmpty(api1210.getTylsxzzbdh())) {
|
api1210.setTylsxzzbdh(api1210.getLsxzzbdh().replace(api1210.getHwdm(), api1210.getTyhwbm()));
|
}
|
return api1210;
|
}
|
if (Constant.API_CODE_1211.equals(inteId)) {
|
Nx2023Api1211 api1211 = new Nx2023Api1211();
|
BeanUtils.copyProperties(data, api1211);
|
//设置統一库区编码
|
if (StringUtils.isEmpty(api1211.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1211.getKqdm());
|
api1211.setTykqbm(tykqbm);
|
}
|
return api1211;
|
}
|
if (Constant.API_CODE_1212.equals(inteId)) {
|
Nx2023Api1212 api1212 = new Nx2023Api1212();
|
BeanUtils.copyProperties(data, api1212);
|
//设置統一单位编码
|
if (StringUtils.isEmpty(api1212.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1212.getDwdm());
|
api1212.setTydwbm(tydwbm);
|
}
|
//设置統一库区编码
|
if (StringUtils.isEmpty(api1212.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1212.getKqdm());
|
api1212.setTykqbm(tykqbm);
|
}
|
return api1212;
|
}
|
if (Constant.API_CODE_1213.equals(inteId)) {
|
Api1213 apiData = (Api1213)data;
|
Nx2023Api1213 api1213 = new Nx2023Api1213();
|
BeanUtils.copyProperties(data, api1213);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1213.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(apiData.getHwdm());
|
api1213.setTyhwbm(tyhwbm);
|
}
|
return api1213;
|
}
|
if (Constant.API_CODE_1301.equals(inteId)) {
|
Nx2023Api1301 api1301 = new Nx2023Api1301();
|
BeanUtils.copyProperties(data, api1301);
|
//设置統一单位编码
|
if (StringUtils.isEmpty(api1301.getTydwbm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1301.getDwdm());
|
api1301.setTydwbm(tydwbm);
|
}
|
//设置統一库区编码
|
if (StringUtils.isEmpty(api1301.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1301.getKqdm());
|
api1301.setTykqbm(tykqbm);
|
}
|
return api1301;
|
}
|
if (Constant.API_CODE_1302.equals(inteId)) {
|
Nx2023Api1302 api1302 = new Nx2023Api1302();
|
BeanUtils.copyProperties(data, api1302);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1302.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1302.getHwdm());
|
api1302.setTyhwbm(tyhwbm);
|
}
|
//设置单号:统一货位编码+yyyyMMdd+4位顺序号
|
if (StringUtils.isEmpty(api1302.getTywsdjcdh())) {
|
api1302.setTywsdjcdh(api1302.getWsdjcdh().replace(api1302.getHwdm(), api1302.getTyhwbm()));
|
}
|
return api1302;
|
}
|
if (Constant.API_CODE_1303.equals(inteId)) {
|
Nx2023Api1303 api1303 = new Nx2023Api1303();
|
BeanUtils.copyProperties(data, api1303);
|
//设置統一廒间编码
|
if (StringUtils.isEmpty(api1303.getTyajbm())) {
|
String tyajbm = apiCommonService.getTyajbm(api1303.getHwdm().substring(0, 28));
|
api1303.setTyajbm(tyajbm);
|
}
|
//设置单号:统一廒间编码+yyyyMMdd+4位顺序号
|
if (StringUtils.isEmpty(api1303.getTyhcjcdh())) {
|
api1303.setTyhcjcdh(api1303.getHcjcdh().replace(api1303.getHwdm(), api1303.getTyajbm()));
|
}
|
return api1303;
|
}
|
if (Constant.API_CODE_1304.equals(inteId)) {
|
Nx2023Api1304 api1304 = new Nx2023Api1304();
|
BeanUtils.copyProperties(data, api1304);
|
//设置統一廒间编码
|
if (StringUtils.isEmpty(api1304.getTyajbm())) {
|
String tyajbm = apiCommonService.getTyajbm(api1304.getHwdm().substring(0, 28));
|
api1304.setTyajbm(tyajbm);
|
}
|
//设置单号:统一廒间编码+yyyyMMdd+4位顺序号
|
if (StringUtils.isEmpty(api1304.getTyqtndjcdh())) {
|
api1304.setTyqtndjcdh(api1304.getQtndjcdh().replace(api1304.getHwdm(), api1304.getTyajbm()));
|
}
|
return api1304;
|
}
|
if (Constant.API_CODE_1305.equals(inteId)) {
|
Api1305 apiData = (Api1305)data;
|
Nx2023Api1305 api1305 = new Nx2023Api1305();
|
BeanUtils.copyProperties(apiData, api1305);
|
//设置統一廒间编码
|
if (StringUtils.isEmpty(api1305.getTyajbm())) {
|
String tyajbm = apiCommonService.getTyajbm(apiData.getHwdm().substring(0, 28));
|
api1305.setTyajbm(tyajbm);
|
}
|
//设置通风作业单号:统一廒间编码+yyyyMMdd+3位顺序号
|
if (StringUtils.isEmpty(api1305.getTytfzydh())) {
|
api1305.setTytfzydh(api1305.getTfzydh().replace(apiData.getHwdm(), api1305.getTyajbm()));
|
}
|
return api1305;
|
}
|
if (Constant.API_CODE_1306.equals(inteId)) {
|
Api1306 apiData = (Api1306)data;
|
Nx2023Api1306 api1306 = new Nx2023Api1306();
|
BeanUtils.copyProperties(apiData, api1306);
|
//设置統一廒间编码
|
if (StringUtils.isEmpty(api1306.getTyajbm())) {
|
String tyajbm = apiCommonService.getTyajbm(apiData.getHwdm().substring(0, 28));
|
api1306.setTyajbm(tyajbm);
|
}
|
//设置熏蒸作业单号:统一廒间编码+yyyyMMdd+3位顺序号
|
if (StringUtils.isEmpty(api1306.getTyxzzydh())) {
|
api1306.setTyxzzydh(api1306.getXzzydh().replace(api1306.getCfdm(), api1306.getTyajbm()));
|
}
|
return api1306;
|
}
|
if (Constant.API_CODE_1307.equals(inteId)) {
|
Api1307 apiData = (Api1307) data;
|
Nx2023Api1307 api1307 = new Nx2023Api1307();
|
BeanUtils.copyProperties(apiData, api1307);
|
|
//设置統一库区编码
|
if (StringUtils.isEmpty(api1307.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1307.getKqdm());
|
api1307.setTykqbm(tykqbm);
|
}
|
//设置統一仓房编码
|
if (StringUtils.isEmpty(api1307.getTycfbm())) {
|
String tycfbm = apiCommonService.getTykqbm(api1307.getCfdm());
|
api1307.setTycfbm(tycfbm);
|
}
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1307.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1307.getHwdm());
|
api1307.setTyhwbm(tyhwbm);
|
}
|
|
//设置文件路径
|
String cntxwjlj = "V2024/2432/";
|
cntxwjlj += api1307.getTykqbm() + "/";
|
cntxwjlj += api1307.getYzwbh() + "/";
|
cntxwjlj += api1307.getSpjksbid() + "/";
|
cntxwjlj += api1307.getTyhwbm() + "_" + DateFormatUtils.format(api1307.getZpsj(),"yyyyMMdd HHmmss") + "." + api1307.getTxwjhzm();
|
api1307.setCntxwjlj(cntxwjlj);
|
|
Map<String, String> map = new HashMap<>();
|
String wjmc = api1307.getTyhwbm() + "_" + DateFormatUtils.format(api1307.getZpsj(),"yyyyMMdd HHmmss") + "." + api1307.getTxwjhzm();
|
map.put(wjmc, FileUtils.fileToByteString(apiData.getWjdz()));
|
api1307.setCntxwjl(JSON.toJSONString(map));
|
|
return api1307;
|
}
|
if (Constant.API_CODE_1308.equals(inteId)) {
|
Api1308 apiData = (Api1308) data;
|
Nx2023Api1308 api1308 = new Nx2023Api1308();
|
BeanUtils.copyProperties(apiData, api1308);
|
|
//设置統一库区编码
|
if (StringUtils.isEmpty(api1308.getTykqbm())) {
|
String tykqbm = apiCommonService.getTykqbm(api1308.getKqdm());
|
api1308.setTykqbm(tykqbm);
|
}
|
|
//设置文件路径
|
String spwjlj = "V2024/2433/";
|
spwjlj += api1308.getTykqbm() + "/";
|
spwjlj += api1308.getSpjksbid() + "/";
|
spwjlj += api1308.getSpjksbid() + "/";
|
spwjlj += api1308.getTykqbm() + "_" + DateFormatUtils.format(api1308.getGjsj(),"yyyyMMdd HHmmss") + "." + api1308.getSpwjhzm();
|
api1308.setSpwjlj(spwjlj);
|
|
Map<String, String> map = new HashMap<>();
|
String wjmc = api1308.getTykqbm() + "_" + DateFormatUtils.format(api1308.getGjsj(),"yyyyMMdd HHmmss") + "." + api1308.getSpwjhzm();
|
map.put(wjmc, FileUtils.fileToByteString(apiData.getWjdz()));
|
api1308.setSpwjl(JSON.toJSONString(map));
|
return api1308;
|
}
|
if (Constant.API_CODE_1309.equals(inteId)) {
|
Api1309 apiData = (Api1309)data;
|
Nx2023Api1309 api1309 = new Nx2023Api1309();
|
BeanUtils.copyProperties(data, api1309);
|
//设置违规单位統一编码
|
if (StringUtils.isEmpty(api1309.getWgdwtybm())) {
|
String tydwbm = apiCommonService.getTydwbm(api1309.getQydm());
|
api1309.setWgdwtybm(tydwbm);
|
}
|
//设置预警信息代码:统一库区编码+yyyyMMdd+3位顺序号
|
if (StringUtils.isEmpty(api1309.getTyyjxxdm())) {
|
String tykqbm = apiCommonService.getTykqbm(apiData.getKqdm());
|
api1309.setTyyjxxdm(api1309.getYjxxdm().replace(apiData.getKqdm(), tykqbm));
|
}
|
return api1309;
|
}
|
if (Constant.API_CODE_1310.equals(inteId)) {
|
Nx2023Api1310 api1310 = new Nx2023Api1310();
|
BeanUtils.copyProperties(data, api1310);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1310.getTyhwbm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1310.getHwdm());
|
api1310.setTyhwbm(tyhwbm);
|
}
|
return api1310;
|
}
|
if (Constant.API_CODE_1404.equals(inteId)) {
|
Api1404 apiData = (Api1404)data;
|
Nx2023Api1404 api1404 = new Nx2023Api1404();
|
BeanUtils.copyProperties(apiData, api1404);
|
//设置統一货位编码
|
if (StringUtils.isEmpty(api1404.getLhhwtybm())) {
|
String tyhwbm = apiCommonService.getTyhwbm(api1404.getLhhwdm());
|
api1404.setLhhwtybm(tyhwbm);
|
}
|
//计划明细号:更换为轮换计划单号+统一库区编码+4为顺序号
|
if (StringUtils.isEmpty(api1404.getTyjhmxdh())) {
|
String tykqbm = apiCommonService.getTykqbm(apiData.getKqdm());
|
api1404.setTyjhmxdh(api1404.getJhmxdh().replace(api1404.getLhjhdh() + apiData.getKqdm(), api1404.getLhjhdh() + tykqbm));
|
}
|
return api1404;
|
}
|
if (Constant.API_CODE_1504.equals(inteId)) {
|
Api1504 api1504 = (Api1504)data;
|
Nx2023Api1504 apiData = new Nx2023Api1504();
|
BeanUtils.copyProperties(api1504, apiData);
|
return apiData;
|
}
|
if (Constant.API_CODE_1505.equals(inteId)) {
|
Nx2023Api1505 apiData = new Nx2023Api1505();
|
BeanUtils.copyProperties(data, apiData);
|
return data;
|
}
|
if (Constant.API_CODE_1506.equals(inteId)) {
|
Nx2023Api1506 apiData = new Nx2023Api1506();
|
BeanUtils.copyProperties(data, apiData);
|
return apiData;
|
}
|
if (Constant.API_CODE_1507.equals(inteId)) {
|
Nx2023Api1507 apiData = new Nx2023Api1507();
|
BeanUtils.copyProperties(data, apiData);
|
return apiData;
|
}
|
if (Constant.API_CODE_1508.equals(inteId)) {
|
Nx2023Api1508 apiData = new Nx2023Api1508();
|
BeanUtils.copyProperties(data, apiData);
|
return apiData;
|
}
|
if (Constant.API_CODE_1509.equals(inteId)) {
|
Nx2023Api1509 apiData = new Nx2023Api1509();
|
BeanUtils.copyProperties(data, apiData);
|
return apiData;
|
}
|
if (Constant.API_CODE_1510.equals(inteId)) {
|
Nx2023Api1510 apiData = new Nx2023Api1510();
|
BeanUtils.copyProperties(data, apiData);
|
return apiData;
|
}
|
return data;
|
}
|
|
/**
|
* 获取上传的接口编码
|
*
|
* @param inteId
|
* @return
|
*/
|
private String getInteId(String inteId) {
|
//封仓确认单
|
if (Constant.API_CODE_1213.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2442;
|
}
|
if (Constant.API_CODE_1504.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2443;
|
}
|
if (Constant.API_CODE_1505.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2444;
|
}
|
if (Constant.API_CODE_1506.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2445;
|
}
|
if (Constant.API_CODE_1507.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2446;
|
}
|
if (Constant.API_CODE_1508.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2447;
|
}
|
if (Constant.API_CODE_1509.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2448;
|
}
|
if (Constant.API_CODE_1510.equals(inteId)) {
|
return NX2023Constant.NX_2023_API_CODE_2449;
|
}
|
return inteId;
|
}
|
|
/**
|
* 赋值最后更新时间
|
*
|
* @param object
|
* @return
|
*/
|
private Object setZhgxsjValue(Object object) {
|
// 使用反射获取属性列表 vo为实体对象名
|
try {
|
Field zhgxsj = object.getClass().getDeclaredField("zhgxsj");
|
zhgxsj.setAccessible(true);
|
zhgxsj.set(object, DateUtils.addSeconds(new Date(), -10));
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
return object;
|
}
|
|
@Override
|
public ResponseDto pullData(ApiParam param, ApiConfs conf) {
|
//该协议无此实现
|
return null;
|
}
|
}
|