From 8774c88a36823195019bbc256a6fb3201c417750 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Sat, 21 Jun 2025 15:55:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B1=87=E7=8E=87=E8=AE=A1=E7=AE=97=E5=90=88?= =?UTF-8?q?=E5=90=8C=E9=87=91=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/oa/domain/vo/ProjectProfitLossVO.java | 6 ++++++ .../src/main/resources/mapper/oa/SysOaProjectMapper.xml | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/ProjectProfitLossVO.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/ProjectProfitLossVO.java index 4f480c3..353edbc 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/ProjectProfitLossVO.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/domain/vo/ProjectProfitLossVO.java @@ -1,5 +1,6 @@ package com.ruoyi.oa.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.math.BigDecimal; @@ -12,14 +13,19 @@ public class ProjectProfitLossVO { private String projectNum; private Date beginTime; private String projectStatus; + @JsonFormat(shape = JsonFormat.Shape.STRING) private BigDecimal originalFunds; // 原始合同金额 private String projectRemark; // 项目备注(用于判断币种) private BigDecimal contractAmountUsd; // 美元合同金额 private Integer isUsd; // 是否美元(1是,0否) private BigDecimal exchangeRate; // 实时汇率 + @JsonFormat(shape = JsonFormat.Shape.STRING) private BigDecimal contractAmountCny; // 人民币合同金额 + @JsonFormat(shape = JsonFormat.Shape.STRING) private BigDecimal warehouseCost; + @JsonFormat(shape = JsonFormat.Shape.STRING) private BigDecimal hrCost; + @JsonFormat(shape = JsonFormat.Shape.STRING) private BigDecimal profitLoss; //盈亏金额 // ...其他字段 // getter/setter diff --git a/ruoyi-oa/src/main/resources/mapper/oa/SysOaProjectMapper.xml b/ruoyi-oa/src/main/resources/mapper/oa/SysOaProjectMapper.xml index 8f467d0..11cb40d 100644 --- a/ruoyi-oa/src/main/resources/mapper/oa/SysOaProjectMapper.xml +++ b/ruoyi-oa/src/main/resources/mapper/oa/SysOaProjectMapper.xml @@ -857,8 +857,10 @@ a.project_id, SUM( CASE - WHEN a.hour > 0 THEN a.hour * u.labor_cost - ELSE a.day_length * 8 * u.labor_cost + -- 当小时数存在时,使用日薪/8计算小时薪资 + WHEN a.hour > 0 THEN a.hour * (COALESCE(u.labor_cost, 0) DIV 8) + -- 当日数存在时,使用日薪×天数 + ELSE a.day_length * COALESCE(u.labor_cost, 0) END ) AS total_hr_cost FROM