通过零件号获取批次号(erp查询)

liweidong
李涛 2 months ago
parent ab54dedeaa
commit 69199221c7
  1. 30
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java
  2. 20
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java
  3. 67
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/pojo/vo/QueryBatchVO.java
  4. 31
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/feign/ErpDataProduceClient.java
  5. 14
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataProduceMapper.java
  6. 41
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataProduceMapper.xml
  7. 14
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java
  8. 24
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java

@ -0,0 +1,30 @@
package org.springblade.erpdata.feign;
import org.springblade.core.launch.constant.AppConstant;
import org.springblade.core.tool.api.R;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
/**
* Feign接口类
*
* @author Chill
*/
@FeignClient(
value = AppConstant.APPLICATION_SYSTEM_NAME,
fallback = IErpDataProduceClientFallback.class
)
public interface IErpDataProduceClient {
String API_PREFIX = "/feign/erpdata/client";
String QUERY_BATCH = API_PREFIX + "/queryBatch";
/**
* 缺件申报-通过零件号获取批次号
*/
@GetMapping(QUERY_BATCH)
R<QueryBatchVO> queryBatch(String partCode);
}

@ -0,0 +1,20 @@
package org.springblade.erpdata.feign;
import org.springblade.core.tool.api.R;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
import org.springframework.stereotype.Component;
/**
* Feign失败配置
*
* @author litao
* @date 2026-1-31
*/
@Component
public class IErpDataProduceClientFallback implements IErpDataProduceClient {
@Override
public R<QueryBatchVO> queryBatch(String partCode) {
return R.fail("获取数据失败");
}
}

@ -0,0 +1,67 @@
package org.springblade.erpdata.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 缺件申报-通过零件号获取批次号 视图实体类
*
* @author litao
*/
@Data
public class QueryBatchVO {
@Schema(description = "零件号")
private String prtno;
/**
* 生产标识
*/
@Schema(description = "生产标识")
private String prtlotno;
/**
* 库房号
*/
@Schema(description = "库房号")
private String warno;
/**
* 库位号
*/
@Schema(description = "库位号")
private String warlocno;
/**
* 库存数
*/
@Schema(description = "库存数")
private String invqty;
/**
* 预占用数
*/
@Schema(description = "预占用数")
private String invalqty;
/**
* 库存部门
*/
@Schema(description = "库存部门")
private String deptno;
/**
* 批次号
*/
@Schema(description = "批次号")
private String splcode;
/**
* 入库时间
*/
@Schema(description = "入库时间")
private String splydate;
/**
* 保管员
*/
@Schema(description = "保管员")
private String warctlr;
/**
* 计划员
*/
@Schema(description = "计划员")
private String schemer;
}

@ -0,0 +1,31 @@
package org.springblade.erpdata.feign;
import io.swagger.v3.oas.annotations.Hidden;
import lombok.AllArgsConstructor;
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
import org.springblade.erpdata.service.IErpDataProduceService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 字典服务Feign实现类
*
* @author Chill
*/
@NonDS
@Hidden
@RestController
@AllArgsConstructor
public class ErpDataProduceClient implements IErpDataProduceClient {
private final IErpDataProduceService erpDataProduceService;
@Override
@GetMapping(QUERY_BATCH)
public R<QueryBatchVO> queryBatch(String partCode) {
return R.data(erpDataProduceService.queryBatch(partCode));
}
}

@ -0,0 +1,14 @@
package org.springblade.erpdata.mapper;
import com.baomidou.mybatisplus.core.mapper.Mapper;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
/**
* Mapper 接口
*
* @author lqk
*/
public interface ErpDataProduceMapper extends Mapper {
QueryBatchVO queryBatch(String partCode);
}

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace = "org.springblade.erpdata.mapper.ErpDataProduceMapper">
<select id="queryBatch" resultType="org.springblade.erpdata.pojo.vo.QueryBatchVO">
SELECT
a.prtno,
a.prtlotno,
a.warno,
a.warlocno,
a.invqty,
a.invalqty,
a.deptno,
a.splcode,
a.splydate,
(
SELECT
max( b.warctlr )
FROM
dba_mgr.t_wardef b
WHERE
a.prtno = b.prtno
AND a.warno = b.warno
AND a.warlocno = b.warlocno
) warctlr,
(
SELECT
max( c.schemer )
FROM
dba_mgr.t_prtplndef c
WHERE
a.prtno = c.prtno
AND a.deptno = c.plndept
) schemer
FROM
dba_mgr.t_prtinvitem a
WHERE
a.prtno = #{partCode}
</select>
</mapper>

@ -0,0 +1,14 @@
package org.springblade.erpdata.service;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
/**
* ERP数据查询service
*
* @author litao
*/
public interface IErpDataProduceService {
QueryBatchVO queryBatch(String partCode);
}

@ -0,0 +1,24 @@
package org.springblade.erpdata.service.impl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.erpdata.mapper.ErpDataProduceMapper;
import org.springblade.erpdata.pojo.vo.QueryBatchVO;
import org.springblade.erpdata.service.IErpDataProduceService;
import org.springframework.stereotype.Service;
/**
* @author litao
* @date 2026-1-31
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class ErpDataProduceServiceImpl implements IErpDataProduceService {
private final ErpDataProduceMapper erpDataProduceMapper;
@Override
public QueryBatchVO queryBatch(String partCode) {
return erpDataProduceMapper.queryBatch(partCode);
}
}
Loading…
Cancel
Save