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>> 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.gaotao.common.exception.XJException;
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 java.util.Map;
@ -55,20 +57,26 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
private HandlingUnitDetailService handlingUnitDetailService;
@Autowired
private AgvClientUtil agvClientUtil;
@Autowired
private AccessSiteMapper accessSiteMapper;
@Value("${custom.ifs-url}")
private String ifsUrl;
@Value("${custom.ifs-ifsDBName}")
private String ifsDBName;
@Value("${custom.ifs-domainUserID}")
private String domainUserID;
@Value("${custom.wcs-url}")
private String wcsUrl;
@Override
public List<Map<String, Object>> getPoList(PurchaseOrderDto purchaseOrder) {
try {
// 注意这里应该根据实际的IFS接口调用方式进行调整
// 如果需要获取多行数据可能需要先获取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(),
"ifsPurchaseOrderNo", purchaseOrder.getPoNumber()
);
@ -78,8 +86,8 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
ObjectMapper mapper = new ObjectMapper();
/*Map<String, Object> params2 = Map.of(
"ifsDBName", "UPD24",
"domainUserID", "CCL_WMS",
"ifsDBName", ifsDBName,
"domainUserID", domainUserID,
"ifsSiteID", "55",
"partNo", "80900095-1DF",
"qtyToIssue", 10,
@ -219,11 +227,15 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
.eq(TransHeader::getTransNo, transHeader.getTransNo())
.update();
}
// 处理托盘和AGV调度逻辑
handlePalletAndAGVDispatch(inData, transHeader);
// 同步到IFS
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) {
throw new XJException("采购入库失败: " + e.getMessage());
}
@ -462,7 +474,7 @@ public class PoServiceImpl extends ServiceImpl<PoMapper, PurchaseOrder> implemen
try {
JSONObject ifsRequest = new JSONObject();
ifsRequest.put("ifsDBName", "IFSTEST");
ifsRequest.put("domainUserID", "CCL_WMS");
ifsRequest.put("domainUserID", domainUserID);
ifsRequest.put("ifsSiteID", "55");
ifsRequest.put("poNumber", inData.getPoNo());
ifsRequest.put("orderNo", inData.getOrderNo());

2
src/main/resources/application.yml

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

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

@ -15,4 +15,14 @@
ORDER BY s.siteid
</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>
Loading…
Cancel
Save