package com.ruoyi.common.utils;
|
|
import cn.hutool.http.HttpRequest;
|
import cn.hutool.json.JSONUtil;
|
import com.alibaba.fastjson.JSONObject;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.type.TypeReference;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.ruoyi.common.core.domain.Result;
|
import com.ruoyi.common.properties.IfsProperties;
|
import lombok.AllArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.stereotype.Component;
|
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @Author zhuo
|
* @Date 2024/9/29
|
*/
|
@Slf4j
|
@AllArgsConstructor
|
@Component
|
public class IfsApiUtils {
|
|
private IfsProperties ifsProperties;
|
|
|
/**
|
* 查询采购订单未检验
|
*/
|
private String getStock(String inAttr) {
|
return ifsProperties.getCustorderPort() + "contract=" + ifsProperties.getContract() + "&contractKey=" + ifsProperties.getContractKeyGet() + "&procedureName=QUERY_POL_RECEIPT_STD&userId=lims_user&inAttr=" + inAttr;
|
}
|
|
public List<Map<String, Object>> getInventory(String inAttr) {
|
String body = HttpRequest.get(getStock(inAttr)).execute().body();
|
ObjectMapper objectMapper = new ObjectMapper();
|
try {
|
Map map = objectMapper.readValue(body, Map.class);
|
List<Map<String, Object>> maps = objectMapper.readValue(JSONUtil.toJsonStr(map.get("LIST_INFO")), new TypeReference<List<Map<String, Object>>>() {
|
});
|
log.info("获取采购订单-->>" + maps);
|
return maps;
|
} catch (JsonProcessingException e) {
|
e.printStackTrace();
|
throw new RuntimeException(e);
|
}
|
}
|
|
/**
|
* 登记采购检验结果STD
|
*/
|
private String ProcurementResultsURL(String inAttr) {
|
return ifsProperties.getCustorder() + "contract=" + ifsProperties.getContract() + "&contractKey=" + ifsProperties.getContractKeyGet() + "&procedureName=REGIST_INSPECTION_RESULTS_STD&userId=lims_user&inAttr=" + inAttr;
|
}
|
|
public Result getProcurementResults(String inAttr) {
|
String body = HttpRequest.get(ProcurementResultsURL(inAttr)).execute().body();
|
log.info("登记采购检验结果-->" + body);
|
ObjectMapper objectMapper = new ObjectMapper();
|
try {
|
Map map = objectMapper.readValue(body, Map.class);
|
String successFlag = map.get("SuccessFlag").toString();
|
if (Integer.valueOf(successFlag) == 1) {
|
return Result.success(map);
|
} else {
|
return Result.fail(map.get("ErrorMsg").toString());
|
}
|
} catch (JsonProcessingException e) {
|
e.printStackTrace();
|
return Result.fail(e.getMessage());
|
}
|
}
|
|
|
/**
|
* 检验后移库
|
*/
|
private String getMoveReceiptApi(String inAttr) {
|
|
return ifsProperties.getCustorder() + "contract=" + ifsProperties.getContract() + "&contractKey=" + ifsProperties.getContractKeyGet() + "&procedureName=MOVE_RECEIPT_STD&userId=lims_user&inAttr=" + inAttr;
|
}
|
|
/**
|
* 原材料检验-检验后移库
|
*
|
* @param inAttr
|
* @return
|
*/
|
public Result moveReceipt(String inAttr) {
|
String body = HttpRequest.get(getMoveReceiptApi(inAttr)).execute().body();
|
log.info("检验后移库-->" + body);
|
ObjectMapper objectMapper = new ObjectMapper();
|
try {
|
Map map = objectMapper.readValue(body, Map.class);
|
String successFlag = map.get("SuccessFlag").toString();
|
if (Integer.valueOf(successFlag) == 1) {
|
return Result.success(map);
|
} else {
|
return Result.fail(map.get("ErrorMsg").toString());
|
}
|
} catch (JsonProcessingException e) {
|
e.printStackTrace();
|
return Result.fail(e.getMessage());
|
}
|
}
|
|
/**
|
* 采购接收更改批号
|
*/
|
private String getMoveReceiptLotApi(String inAttr) {
|
|
return ifsProperties.getCustorder() + "contract=" + ifsProperties.getContract() + "&contractKey=" + ifsProperties.getContractKeyGet() + "&procedureName=MODIFY_PURCH_RECEIPT_LOT_STD&userId=lims_user&inAttr=" + inAttr;
|
}
|
|
/**
|
* 原材料检验-检验后移库
|
*
|
* @param inAttr
|
* @return
|
*/
|
public Result updateMoveReceiptLot(String inAttr) {
|
String body = HttpRequest.get(getMoveReceiptLotApi(inAttr)).execute().body();
|
log.info("修改采购订单批次号-->" + body);
|
ObjectMapper objectMapper = new ObjectMapper();
|
try {
|
Map map = objectMapper.readValue(body, Map.class);
|
String successFlag = map.get("SuccessFlag").toString();
|
if (Integer.valueOf(successFlag) == 1) {
|
return Result.success(map);
|
} else {
|
return Result.fail(map.get("ErrorMsg").toString());
|
}
|
} catch (JsonProcessingException e) {
|
e.printStackTrace();
|
return Result.fail(e.getMessage());
|
}
|
}
|
|
|
/**
|
* 查询库存数据
|
*/
|
private String getIfsStockApi(String inAttr) {
|
|
return ifsProperties.getCustorderPort() + "contract=" + ifsProperties.getContract() + "&contractKey=" + ifsProperties.getContractKeyGet() + "&procedureName=QUERY_INVENTORY_INFO_STD&userId=lims_user&inAttr=" + inAttr;
|
}
|
|
/**
|
* 查询库存数据
|
*
|
* @param inAttr
|
* @return
|
*/
|
public Result getIfsStock(String inAttr) {
|
JSONObject stockMap = new JSONObject();
|
stockMap.put("procedureName", "QUERY_INVENTORY_INFO_STD");
|
stockMap.put("contract", ifsProperties.getContract());
|
stockMap.put("contractKey", ifsProperties.getContractKeyPost());
|
stockMap.put("userId", "userId");
|
stockMap.put("inAttr", inAttr);
|
String body = HttpRequest.post(ifsProperties.getCustorderPort()).form(stockMap).execute().body();
|
log.info("查询库存信息-->" + body);
|
ObjectMapper objectMapper = new ObjectMapper();
|
try {
|
Map map = objectMapper.readValue(body, Map.class);
|
String successFlag = map.get("SuccessFlag").toString();
|
if (Integer.valueOf(successFlag) == 1) {
|
return Result.success(map);
|
} else {
|
return Result.fail(map.get("ErrorMsg").toString());
|
}
|
} catch (JsonProcessingException e) {
|
e.printStackTrace();
|
return Result.fail(e.getMessage());
|
}
|
}
|
}
|