wlzboy
2025-12-23 355dda1f90c70ab04c4517688da37d1a4236f112
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysEmergencyTaskServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.common.utils.BigDecimalUtil;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.domain.SysTask;
@@ -44,6 +45,8 @@
                                  Long serviceOrderId, Long dispatchOrderId, String serviceOrdNo) {
        SysTaskEmergency emergencyInfo = new SysTaskEmergency();
        emergencyInfo.setTaskId(taskId);
        emergencyInfo.setServiceOrdVip(createVO.getServiceOrdVIP());
        emergencyInfo.setFromHq2Is(createVO.getFromHQ2_is());
        if (createVO.getPatient() != null) {
            emergencyInfo.setPatientContact(createVO.getPatient().getContact());
@@ -110,7 +113,7 @@
            }
        }
        emergencyInfo.setTransferDistance(createVO.getTransferDistance());
        emergencyInfo.setTransferDistance(createVO.getDistance());
        emergencyInfo.setTransferPrice(createVO.getPrice());
        emergencyInfo.setDocumentTypeId(createVO.getDocumentTypeId());
        emergencyInfo.setTaskTypeId(createVO.getTaskTypeId());
@@ -266,8 +269,8 @@
            }
        }
        if (updateVO.getTransferDistance() != null) {
            oldEmergency.setTransferDistance(updateVO.getTransferDistance());
        if (updateVO.getDistance() != null) {
            oldEmergency.setTransferDistance(updateVO.getDistance());
        }
        if (updateVO.getPrice() != null) {
            oldEmergency.setTransferPrice(updateVO.getPrice());
@@ -306,6 +309,9 @@
        if( updateVO.getLegacyServiceOrdClass() != null){
            oldEmergency.setLegacyServiceOrdClass(updateVO.getLegacyServiceOrdClass());
        }
        oldEmergency.setFromHq2Is(updateVO.getFromHQ2_is());
        oldEmergency.setServiceOrdVip(updateVO.getServiceOrdVIP());
        sysTaskEmergencyMapper.updateSysTaskEmergency(oldEmergency);
    }
@@ -428,8 +434,8 @@
        }
        
        // 更新费用信息
        if (createVO.getTransferDistance() != null) {
            existingInfo.setTransferDistance(createVO.getTransferDistance());
        if (createVO.getDistance() != null && BigDecimalUtil.izBigZero(createVO.getDistance())) {
            existingInfo.setTransferDistance(createVO.getDistance());
        }
        if (createVO.getPrice() != null) {
            existingInfo.setTransferPrice(createVO.getPrice());
@@ -472,7 +478,10 @@
        if(createVO.getLegacyServiceOrdClass() != null){
            existingInfo.setLegacyServiceOrdClass(createVO.getLegacyServiceOrdClass());
        }
        existingInfo.setServiceOrdVip(createVO.getServiceOrdVIP());
        existingInfo.setFromHq2Is(createVO.getFromHQ2_is());
        // 执行更新
        sysTaskEmergencyMapper.updateSysTaskEmergency(existingInfo);
    }
@@ -484,6 +493,7 @@
        }
        try {
            sysTaskEmergencyService.markNeedResync(taskId);
        } catch (Exception e) {
            // 标记失败不影响主流程
        }