Browse Source

ifsdb常量;工厂加立库标志

master
han\hanst 4 months ago
parent
commit
b3d36bf7c2
  1. 2
      src/main/java/com/gaotao/modules/factory/dao/AccessSiteMapper.java
  2. 30
      src/main/java/com/gaotao/modules/po/service/impl/PoServiceImpl.java
  3. 2
      src/main/resources/application.yml
  4. 10
      src/main/resources/mapper/factory/AccessSiteMapper.xml

2
src/main/java/com/gaotao/modules/factory/dao/AccessSiteMapper.java

@ -17,4 +17,6 @@ public interface AccessSiteMapper extends BaseMapper<AccessSite> {
*/ */
List<Map<String, Object>> getUserAuthorizedSites(@Param("userName") String userName); List<Map<String, Object>> getUserAuthorizedSites(@Param("userName") String userName);
List<Map<String, Object>> getSiteById(@Param("siteId") String siteId);
} }

30
src/main/java/com/gaotao/modules/po/service/impl/PoServiceImpl.java

@ -6,6 +6,8 @@ import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.gaotao.common.exception.XJException; import com.gaotao.common.exception.XJException;
import com.gaotao.common.utils.*; import com.gaotao.common.utils.*;
import com.gaotao.modules.factory.dao.AccessSiteMapper;
import com.gaotao.modules.factory.entity.Site;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Map; import java.util.Map;
@ -55,20 +57,26 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
private HandlingUnitDetailService handlingUnitDetailService; private HandlingUnitDetailService handlingUnitDetailService;
@Autowired @Autowired
private AgvClientUtil agvClientUtil; private AgvClientUtil agvClientUtil;
@Autowired
private AccessSiteMapper accessSiteMapper;
@Value("${custom.ifs-url}") @Value("${custom.ifs-url}")
private String ifsUrl; private String ifsUrl;
@Value("${custom.ifs-ifsDBName}")
private String ifsDBName;
@Value("${custom.ifs-domainUserID}")
private String domainUserID;
@Value("${custom.wcs-url}") @Value("${custom.wcs-url}")
private String wcsUrl; private String wcsUrl;
@Override @Override
public List<Map<String, Object>> getPoList(PurchaseOrderDto purchaseOrder) { public List<Map<String, Object>> getPoList(PurchaseOrderDto purchaseOrder) {
try { try {
// 注意这里应该根据实际的IFS接口调用方式进行调整 // 注意这里应该根据实际的IFS接口调用方式进行调整
// 如果需要获取多行数据可能需要先获取PO头再获取行数据 // 如果需要获取多行数据可能需要先获取PO头再获取行数据
Map<String, Object> params = Map.of(
"ifsDBName", "UPD24",
"domainUserID", "CCL_WMS",
Map<String, Object> params = Map.of("ifsDBName", ifsDBName, "domainUserID", domainUserID,
"ifsSiteID", purchaseOrder.getSite(), "ifsSiteID", purchaseOrder.getSite(),
"ifsPurchaseOrderNo", purchaseOrder.getPoNumber() "ifsPurchaseOrderNo", purchaseOrder.getPoNumber()
); );
@ -78,8 +86,8 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
ObjectMapper mapper = new ObjectMapper(); ObjectMapper mapper = new ObjectMapper();
/*Map<String, Object> params2 = Map.of( /*Map<String, Object> params2 = Map.of(
"ifsDBName", "UPD24",
"domainUserID", "CCL_WMS",
"ifsDBName", ifsDBName,
"domainUserID", domainUserID,
"ifsSiteID", "55", "ifsSiteID", "55",
"partNo", "80900095-1DF", "partNo", "80900095-1DF",
"qtyToIssue", 10, "qtyToIssue", 10,
@ -219,11 +227,15 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
.eq(TransHeader::getTransNo, transHeader.getTransNo()) .eq(TransHeader::getTransNo, transHeader.getTransNo())
.update(); .update();
} }
// 处理托盘和AGV调度逻辑
handlePalletAndAGVDispatch(inData, transHeader);
// 同步到IFS // 同步到IFS
syncToIFS(inData, transHeader); syncToIFS(inData, transHeader);
// 如果工厂是立体仓库则需处理托盘和AGV调度逻辑
List<Map<String, Object>> sites = accessSiteMapper.getSiteById(inData.getSite());
if (!sites.isEmpty() && sites.getFirst().get("verticalWarehouseFlag")!=null
&& "Y".equals(sites.getFirst().get("verticalWarehouseFlag").toString())) {
handlePalletAndAGVDispatch(inData, transHeader);
}
} catch (Exception e) { } catch (Exception e) {
throw new XJException("采购入库失败: " + e.getMessage()); throw new XJException("采购入库失败: " + e.getMessage());
} }
@ -462,7 +474,7 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
try { try {
JSONObject ifsRequest = new JSONObject(); JSONObject ifsRequest = new JSONObject();
ifsRequest.put("ifsDBName", "IFSTEST"); ifsRequest.put("ifsDBName", "IFSTEST");
ifsRequest.put("domainUserID", "CCL_WMS");
ifsRequest.put("domainUserID", domainUserID);
ifsRequest.put("ifsSiteID", "55"); ifsRequest.put("ifsSiteID", "55");
ifsRequest.put("poNumber", inData.getPoNo()); ifsRequest.put("poNumber", inData.getPoNo());
ifsRequest.put("orderNo", inData.getOrderNo()); ifsRequest.put("orderNo", inData.getOrderNo());

2
src/main/resources/application.yml

@ -102,6 +102,8 @@ query:
custom: custom:
ifs-url: 'https://cclifswebservice.ccldesign.com/api/v1/' ifs-url: 'https://cclifswebservice.ccldesign.com/api/v1/'
ifs-ifsDBName: 'IFST'
ifs-domainUserID: 'CCL_WMS'
wcs-url: 'http://wcs-server/api/receive' wcs-url: 'http://wcs-server/api/receive'
agv-url: 'http://agv-server/api' agv-url: 'http://agv-server/api'

10
src/main/resources/mapper/factory/AccessSiteMapper.xml

@ -15,4 +15,14 @@
ORDER BY s.siteid ORDER BY s.siteid
</select> </select>
<select id="getSiteById" resultType="java.util.Map">
SELECT
s.siteid as siteCode,
s.sitename as siteName,
s.verticalWarehouseFlag
FROM site s
WHERE s.siteid = #{siteId}
AND s.active = 'Y'
</select>
</mapper> </mapper>
Loading…
Cancel
Save