wlzboy
2026-03-19 c5ac97682e3b4ca748541ace97cb37a2295bd81e
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysTask.java
@@ -32,6 +32,7 @@
    @Excel(name = "任务状态", readConverterExp = "PENDING=待开始,IN_PROGRESS=任务中,COMPLETED=已完成,CANCELLED=已取消")
    private String taskStatus;
    /** 任务描述 */
    @Excel(name = "任务描述")
    private String taskDescription;
@@ -88,6 +89,8 @@
    @Excel(name = "创建人ID")
    private Long creatorId;
    /** 执行人ID */
    @Excel(name = "执行人ID")
    private Long assigneeId;
@@ -107,6 +110,10 @@
    /** 部门名称 */
    @Excel(name = "部门名称")
    private String deptName;
    /** 车牌号(列表显示第一辆车) */
    @Excel(name = "车牌号")
    private String vehicleNo;
    /** 删除标志(0代表存在 2代表删除) */
    private String delFlag;
@@ -131,6 +138,49 @@
    /** 福祉车扩展信息 */
    private SysTaskWelfare welfareInfo;
    private String showTaskCode;
    public void setShowTaskCode(String showTaskCode) {
         showTaskCode=this.showTaskCode;
    }
    // 用于SQL映射的字段(多码查询优化)
    //这些字段接收SQL查询中计算出的dispatchCode和serviceCode值
    private String dispatchCode;
    private String serviceCode;
    public String getDispatchCode() {
        return dispatchCode;
    }
    public void setDispatchCode(String dispatchCode) {
        this.dispatchCode = dispatchCode;
    }
    public String getServiceCode() {
        return serviceCode;
    }
    public void setServiceCode(String serviceCode) {
        this.serviceCode = serviceCode;
    }
    /**
     * 获取显示任务编号,优先返回急救转运的调度单编号,其次是服务单编号,最后是任务编号
     */
    public String getShowTaskCode(){
        if(this.emergencyInfo!=null){
            String dispatchOrdCode=this.emergencyInfo.getDispatchCode();
            if(dispatchOrdCode!=null){
                return dispatchOrdCode;
            }
            String serviceOrdCode=this.emergencyInfo.getServiceCode();
            if(serviceOrdCode!=null){
                return serviceOrdCode;
            }
        }
        return this.taskCode;
    }
    public void setTaskId(Long taskId) {
        this.taskId = taskId;
@@ -308,6 +358,14 @@
        return deptName;
    }
    public void setVehicleNo(String vehicleNo) {
        this.vehicleNo = vehicleNo;
    }
    public String getVehicleNo() {
        return vehicleNo;
    }
    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }
@@ -396,8 +454,12 @@
                // 返程中 -> 已完成
                return newStatus == TaskStatus.COMPLETED;
            case IN_PROGRESS:
                // 兼容旧数据:任务中 -> 已完成、已取消、待处理
                return newStatus == TaskStatus.COMPLETED || newStatus == TaskStatus.CANCELLED || newStatus == TaskStatus.PENDING;
                // 兼容旧数据:任务中 -> 已完成、已取消、待处理、已到达、返程中
                return newStatus == TaskStatus.COMPLETED
                    || newStatus == TaskStatus.CANCELLED
                    || newStatus == TaskStatus.PENDING
                    || newStatus == TaskStatus.ARRIVED
                    || newStatus == TaskStatus.RETURNING;
            case COMPLETED:
            case CANCELLED:
                // 已完成、已取消 -> 不允许任何状态变更