diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java index e54c03c71..da25acc7d 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java @@ -475,6 +475,7 @@ public class TmsOrder implements Serializable { @ApiModelProperty(value = "已收运费") private BigDecimal collectedFreight; + @ApiModelProperty(value = "未收运费") private BigDecimal uncollectedFreight; @ApiModelProperty(value = "少收运费") diff --git a/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java b/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java index 53f508732..2e5629f26 100644 --- a/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java +++ b/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java @@ -2,6 +2,8 @@ package com.linke.finance.application.server.reconciliation; import com.alibaba.fastjson.JSONObject; import com.aliyun.dingtalkworkflow_1_0.models.StartProcessInstanceResponse; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.linke.finance.domain.businessDocument.entity.BusinessDocument; import com.linke.finance.domain.businessDocument.service.BusinessDocumentDomainService; import com.linke.finance.domain.reconciliation.entity.Reconciliation; @@ -21,6 +23,7 @@ import com.linke.finance.infrastructure.feign.ProductServiceFeign; import com.linke.finance.infrastructure.feign.WlhyServiceFeign; import com.mhd.common.core.constant.SubjectConstants; import com.mhd.common.core.domain.dto.ReconciliationDTO; +import com.mhd.common.core.domain.entity.TmsOrder; import com.mhd.common.core.domain.entity.Verification; import com.mhd.common.core.domain.po.OrganizationPo; import com.mhd.common.core.domain.po.UserPo; @@ -29,6 +32,7 @@ import com.mhd.common.core.exception.ServiceException; import com.mhd.common.core.utils.OrderSequence; import com.mhd.common.core.utils.StringUtils; import com.mhd.common.core.utils.bean.BeanUtils; +import com.mhd.common.core.utils.sms.Result; import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.model.LoginUser; @@ -156,8 +160,25 @@ public class ReconciliationApplicationService { } } return reconciliationPOS;*/ + List reconciliationPOS = reconciliationDomainService.queryList(reconciliationDO); + for (ReconciliationPO reconciliationPO : reconciliationPOS) { + String innerNumber = reconciliationPO.getInnerNumber(); + if (innerNumber != null && !innerNumber.trim().isEmpty()) { + ReconciliationDTO reconciliationDTO = new ReconciliationDTO(); + reconciliationDTO.setInnerNumber(innerNumber); + Result> orderListByReconciliation = wlhyServiceFeign.getOrderListByReconciliation(reconciliationDTO, 1, 10); + if (orderListByReconciliation != null && orderListByReconciliation.getResult() != null) { + Page result = orderListByReconciliation.getResult(); + List records = result.getRecords(); + if (records != null && !records.isEmpty()) { + TmsOrder tmsOrder = records.get(0); + reconciliationPO.setSettlementCurrency(tmsOrder.getSettlementCurrency()); + } + } + } + } - return reconciliationDomainService.queryList(reconciliationDO); + return reconciliationPOS; } /** diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java index 403f4c91f..5809929b0 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java @@ -49,11 +49,18 @@ import org.apache.http.util.EntityUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.NodeList; +import org.xml.sax.InputSource; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; import java.io.IOException; +import java.io.StringReader; import java.io.StringWriter; import java.math.BigDecimal; import java.sql.NClob; @@ -535,7 +542,7 @@ public class ReconciliationImpl extends ServiceImpl 0) { + Element sendResult = (Element) sendResultList.item(0); + + // 获取子元素内容 + String bdocid = sendResult.getElementsByTagName("bdocid").item(0).getTextContent(); + String resultcode = sendResult.getElementsByTagName("resultcode").item(0).getTextContent(); + String content = sendResult.getElementsByTagName("content").item(0).getTextContent(); + + System.out.println("bdocid: " + bdocid); + System.out.println("resultcode: " + resultcode); + System.out.println("content: " + content); + if(resultcode.equals("1")){ + reconciliation.setSynchronousStatus(1); + }else{ + reconciliation.setSynchronousStatus(2); + } + } + ncLogMapper.updateById(ncLog); + reconciliationMapper.updateById(reconciliation); response.close(); } catch (Exception e) { e.printStackTrace(); @@ -565,15 +608,20 @@ public class ReconciliationImpl extends ServiceImpl ajaxResult1=wlhyServiceFeign.selectByOrderNum(tmsOrder.getGoodsNumber()); if(ajaxResult1.getCode()==200){ TmsTransportNote tmsTransportNote= ajaxResult1.getData(); - if(ObjectUtil.isNotNull(tmsTransportNote.getIsPaper())){ - date=tmsTransportNote.getConfirmReceiptTime(); - if(null==date){ - date=new Date(); + if(ObjectUtil.isNotNull(tmsTransportNote)){ + if(ObjectUtil.isNotNull(tmsTransportNote.getIsPaper())){ + date=tmsTransportNote.getConfirmReceiptTime(); + if(null==date){ + date=new Date(); + } + dateString = sdf.format(date); + }else{ + throw new ServiceException("运单还没签收, 先签收"); } - dateString = sdf.format(date); }else{ - throw new ServiceException("运单还没签收, 先签收"); + throw new ServiceException("未查询到关联运单, 请核对"); } + } /* if(null==reconciliation.getSettlementPartyId()){ throw new ServiceException("没有结算方,请核对"); @@ -677,7 +725,7 @@ public class ReconciliationImpl extends ServiceImpl 0) { + Element sendResult = (Element) sendResultList.item(0); + + // 获取子元素内容 + String bdocid = sendResult.getElementsByTagName("bdocid").item(0).getTextContent(); + String resultcode = sendResult.getElementsByTagName("resultcode").item(0).getTextContent(); + String content = sendResult.getElementsByTagName("content").item(0).getTextContent(); + + System.out.println("bdocid: " + bdocid); + System.out.println("resultcode: " + resultcode); + System.out.println("content: " + content); + if(resultcode.equals("1")){ + reconciliation.setSynchronousStatus(1); + }else{ + reconciliation.setSynchronousStatus(2); + } + } + ncLogMapper.updateById(ncLog); + reconciliationMapper.updateById(reconciliation); response.close(); } catch (Exception e) { e.printStackTrace(); @@ -836,7 +920,7 @@ public class ReconciliationImpl extends ServiceImpl 0) { + Element sendResult = (Element) sendResultList.item(0); + + // 获取子元素内容 + String bdocid = sendResult.getElementsByTagName("bdocid").item(0).getTextContent(); + String resultcode = sendResult.getElementsByTagName("resultcode").item(0).getTextContent(); + String content = sendResult.getElementsByTagName("content").item(0).getTextContent(); + + System.out.println("bdocid: " + bdocid); + System.out.println("resultcode: " + resultcode); + System.out.println("content: " + content); + if(resultcode.equals("1")){ + reconciliation.setSkSynchronousStatus(1); + }else{ + reconciliation.setSkSynchronousStatus(2); + } + } + ncLogMapper.updateById(ncLog); + reconciliationMapper.updateById(reconciliation); response.close(); } catch (Exception e) { e.printStackTrace(); @@ -955,7 +1075,7 @@ public class ReconciliationImpl extends ServiceImpl 0) { + Element sendResult = (Element) sendResultList.item(0); + + // 获取子元素内容 + String bdocid = sendResult.getElementsByTagName("bdocid").item(0).getTextContent(); + String resultcode = sendResult.getElementsByTagName("resultcode").item(0).getTextContent(); + String content = sendResult.getElementsByTagName("content").item(0).getTextContent(); + + System.out.println("bdocid: " + bdocid); + System.out.println("resultcode: " + resultcode); + System.out.println("content: " + content); + if(resultcode.equals("1")){ + reconciliation.setSkSynchronousStatus(1); + }else{ + reconciliation.setSkSynchronousStatus(2); + } + } + ncLogMapper.updateById(ncLog); + reconciliationMapper.updateById(reconciliation); response.close(); } catch (Exception e) { e.printStackTrace(); diff --git a/mhd_finance/src/main/java/com/linke/finance/infrastructure/feign/WlhyServiceFeign.java b/mhd_finance/src/main/java/com/linke/finance/infrastructure/feign/WlhyServiceFeign.java index 864ea2e89..326cc6b52 100644 --- a/mhd_finance/src/main/java/com/linke/finance/infrastructure/feign/WlhyServiceFeign.java +++ b/mhd_finance/src/main/java/com/linke/finance/infrastructure/feign/WlhyServiceFeign.java @@ -1,6 +1,11 @@ package com.linke.finance.infrastructure.feign; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.mhd.common.core.domain.dto.ReconciliationDTO; import com.mhd.common.core.domain.dto.UserDriverDTO; +import com.mhd.common.core.domain.entity.TmsOrder; +import com.mhd.common.core.utils.sms.Result; import com.mhd.common.core.web.domain.AjaxResult; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; @@ -16,4 +21,9 @@ public interface WlhyServiceFeign { */ @GetMapping("/ntocc/tmsOrder/getById") public AjaxResult getById(@RequestParam(name="id",required=true) Long id); -} + + @GetMapping(value = "/ntocc/outBoundSummary/getOrderListByReconciliation") + public Result> getOrderListByReconciliation(ReconciliationDTO reconciliationDTO, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize); +} \ No newline at end of file