|
@@ -23,6 +23,7 @@ import (
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
|
|
|
+ "github.com/shopspring/decimal"
|
|
|
"go.mod/conf"
|
|
|
"go.mod/models"
|
|
|
"go.mod/web/viewmodels"
|
|
@@ -80,10 +81,14 @@ func MakeFolderContract(Data []*viewmodels.FolderContract, node *viewmodels.Fold
|
|
|
safeTotal := 0
|
|
|
safeTotalRectification := 0
|
|
|
safeTotalRectificationIn := 0
|
|
|
+ SafeTotalApproval := 0
|
|
|
+ SafeTotalClose := 0
|
|
|
// 1-6 质量巡检
|
|
|
qualityTotal := 0
|
|
|
qualityTotalRectification := 0
|
|
|
qualityTotalRectificationIn := 0
|
|
|
+ QualityTotalApproval := 0
|
|
|
+ QualityTotalClose := 0
|
|
|
|
|
|
for _, v := range childs { //查询子节点的子节点,并添加到子节点
|
|
|
_, has := HaveChildContract(Data, v)
|
|
@@ -99,26 +104,38 @@ func MakeFolderContract(Data []*viewmodels.FolderContract, node *viewmodels.Fold
|
|
|
}
|
|
|
// 2.标段汇总
|
|
|
// 2-1收入金额 合计
|
|
|
+
|
|
|
+ // returnDate[item.Time.Format(conf.SysTimeformMonth)], _ = decimal.NewFromFloat(returnDate[item.Time.Format(conf.SysTimeformMonth)]).Add(decimal.NewFromFloat(typePrice)).Float64()
|
|
|
+
|
|
|
price, _ := strconv.ParseFloat(v.ContractsIncome, 64)
|
|
|
- totalIncome = totalIncome + price
|
|
|
+ totalIncome, _ = decimal.NewFromFloat(totalIncome).Add(decimal.NewFromFloat(price)).Float64()
|
|
|
// 2-2合同总数 合计
|
|
|
totalContractNumber = totalContractNumber + v.Contracts
|
|
|
// 2-3 汇款进度
|
|
|
price, _ = strconv.ParseFloat(v.ContractsReturned, 64)
|
|
|
- totalReturn = totalReturn + price
|
|
|
+ totalReturn, _ = decimal.NewFromFloat(totalReturn).Add(decimal.NewFromFloat(price)).Float64()
|
|
|
+ // totalReturn = totalReturn + price
|
|
|
//
|
|
|
price, _ = strconv.ParseFloat(v.ContractsPay, 64)
|
|
|
- totalPay = totalPay + price
|
|
|
+ totalPay, _ = decimal.NewFromFloat(totalPay).Add(decimal.NewFromFloat(price)).Float64()
|
|
|
+ // totalPay = totalPay + price
|
|
|
price, _ = strconv.ParseFloat(v.ContractsPaid, 64)
|
|
|
- totalPaid = totalPaid + price
|
|
|
+ totalPaid, _ = decimal.NewFromFloat(totalPaid).Add(decimal.NewFromFloat(price)).Float64()
|
|
|
+ // totalPaid = totalPaid + price
|
|
|
+
|
|
|
// 安全巡检
|
|
|
safeTotal = safeTotal + v.SafeTotal
|
|
|
safeTotalRectification = safeTotalRectification + v.SafeRectification
|
|
|
safeTotalRectificationIn = safeTotalRectificationIn + v.SafeRectificationIn
|
|
|
+ SafeTotalApproval = SafeTotalApproval + v.SafeApproval
|
|
|
+ SafeTotalClose = SafeTotalClose + v.SafeClose
|
|
|
+
|
|
|
// 1-6 质量巡检
|
|
|
qualityTotal = safeTotal + v.QualityTotal
|
|
|
qualityTotalRectification = safeTotalRectification + v.QualityRectification
|
|
|
qualityTotalRectificationIn = safeTotalRectificationIn + v.QualityRectificationIn
|
|
|
+ QualityTotalApproval = QualityTotalApproval + v.QualityApproval
|
|
|
+ QualityTotalClose = QualityTotalClose + v.QualityClose
|
|
|
}
|
|
|
|
|
|
node.ContractsIncome = fmt.Sprintf("%G", totalIncome)
|
|
@@ -141,10 +158,15 @@ func MakeFolderContract(Data []*viewmodels.FolderContract, node *viewmodels.Fold
|
|
|
node.SafeTotal = safeTotal
|
|
|
node.SafeRectification = safeTotalRectification
|
|
|
node.SafeRectificationIn = safeTotalRectificationIn
|
|
|
+ node.SafeApproval = SafeTotalApproval
|
|
|
+ node.SafeClose = SafeTotalClose
|
|
|
+
|
|
|
// 质量巡检
|
|
|
node.QualityTotal = qualityTotal
|
|
|
node.QualityRectification = qualityTotalRectification
|
|
|
node.QualityRectificationIn = qualityTotalRectificationIn
|
|
|
+ node.QualityApproval = QualityTotalApproval
|
|
|
+ node.QualityClose = QualityTotalClose
|
|
|
}
|
|
|
}
|
|
|
|