package com.fzzy.igds.dzhwk.v1.impl;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.fzzy.igds.dzhwk.domain.Depot;
|
import com.fzzy.igds.dzhwk.v1.ApiV1Service;
|
import com.fzzy.igds.dzhwk.v1.dto.ApiV1Data1005;
|
import com.fzzy.igds.dzhwk.v1.dto.ApiV1ReqDto;
|
import com.fzzy.igds.sys.DepotService;
|
import com.ruoyi.common.utils.StringUtils;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.lang3.time.DateUtils;
|
import org.springframework.stereotype.Service;
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
* @Description 解析货位信息
|
* @Author CZT
|
* @Date 2025/6/04 18:50
|
*/
|
@Slf4j
|
@Service
|
public class ApiV1ServiceImpl1005 implements ApiV1Service {
|
|
@Resource
|
private DepotService depotService;
|
|
@Override
|
public String getInterfaceId() {
|
return "1005";
|
}
|
|
@Override
|
public void analysis(String dataStr, ApiV1ReqDto configData) {
|
|
List<ApiV1Data1005> list = JSONObject.parseArray(dataStr, ApiV1Data1005.class);
|
if (null == list || list.isEmpty()) {
|
log.error("-----未获取到货位信息,不解析---------");
|
return;
|
}
|
try {
|
Depot depot;
|
for (ApiV1Data1005 apiData : list) {
|
|
depot = depotService.getCacheDepot(configData.getSign(), apiData.getHwdm());
|
if (null == depot) {
|
depot = new Depot();
|
}
|
|
depot.setId(apiData.getHwdm());
|
depot.setName(apiData.getHwmc());
|
|
depot.setCompanyId(configData.getSign());
|
depot.setDeptId(configData.getDeptId());
|
depot.setBuildingId(apiData.getAjdm().substring(0, 25));
|
depot.setGranaryId(apiData.getAjdm());
|
depot.setStorageMax(apiData.getHwrl());
|
depot.setStoreKeeperName(apiData.getBgy());
|
depot.setFoodVariety(apiData.getLspzdm());
|
depot.setFoodType(apiData.getLsxzdm());
|
depot.setFoodLevel(apiData.getLsdjdm());
|
depot.setFoodYear(apiData.getShnd());
|
depot.setFoodLocation(apiData.getCd());
|
depot.setDepotStatus(apiData.getHwzt());
|
if (StringUtils.isNotEmpty(apiData.getRcsj())) {
|
depot.setStoreDate(DateUtils.parseDate(apiData.getRcsj(), "yyyy-MM-dd HH:mm:ss"));
|
}
|
if (StringUtils.isNotEmpty(apiData.getZhgxsj())) {
|
depot.setUpdateTime(DateUtils.parseDate(apiData.getZhgxsj(), "yyyy-MM-dd HH:mm:ss"));
|
}
|
depot.setStorageReal(apiData.getSjsl());
|
depotService.saveDepot(depot);
|
}
|
} catch (Exception e) {
|
log.error("-----解析失败={}---------", e);
|
}
|
|
}
|
}
|