验收修改
This commit is contained in:
parent
f4d36e6180
commit
ef4cd77a21
@ -5,7 +5,7 @@
|
||||
"groupId" : "b76810fe6da84d138b6bc227dd26b198",
|
||||
"name" : "里程碑",
|
||||
"createTime" : null,
|
||||
"updateTime" : 1689834700688,
|
||||
"updateTime" : 1718940039091,
|
||||
"lock" : null,
|
||||
"createBy" : null,
|
||||
"updateBy" : "admin",
|
||||
@ -22,4 +22,4 @@
|
||||
"responseBodyDefinition" : null
|
||||
}
|
||||
================================
|
||||
return db.select("SELECT name, state FROM project_sub_item WHERE parent_id = 0 AND engineering_sn = #{body.engineeringSn} ")
|
||||
return db.select("SELECT et.* FROM engineering_stage et INNER JOIN engineering e ON et.id = e.stage_id WHERE e.engineering_sn = #{body.engineeringSn} ")
|
||||
@ -5,7 +5,7 @@
|
||||
"groupId" : "1f3d3e5b9fe340bab84de67b0de08f44",
|
||||
"name" : "投资管理",
|
||||
"createTime" : null,
|
||||
"updateTime" : 1706587043096,
|
||||
"updateTime" : 1718961018857,
|
||||
"lock" : null,
|
||||
"createBy" : "admin",
|
||||
"updateBy" : "admin",
|
||||
@ -36,21 +36,50 @@ BigDecimal realPayAmountByYear = db.selectValue("SELECT IFNULL(SUM(pay_amount),
|
||||
BigDecimal applyAmountTotal = db.selectValue("SELECT IFNULL(SUM(apply_payment), 0) FROM investment_payment_stat WHERE #project")
|
||||
BigDecimal paymentTotal = db.selectValue("SELECT IFNULL(SUM(payment), 0) FROM investment_payment_stat WHERE #project")
|
||||
|
||||
BigDecimal big = new BigDecimal(10000);
|
||||
result.put("paymentByMonth", paymentByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("applyAmountByMonth", applyAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("realPayAmountByMonth", realPayAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
var unPayAmountByMonth = applyAmountByMonth.subtract(realPayAmountByMonth);
|
||||
result.put("unPayAmountByMonth", unPayAmountByMonth > 0 ? unPayAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP) : 0)
|
||||
|
||||
result.put("totalAmount", totalAmount.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("payRatio", realPayAmountTotal == 0 ? 0 : realPayAmountTotal.divide(totalAmount, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
Map map = db.selectOne("SELECT SUM(engineering_cost) cost FROM engineering WHERE #project ")
|
||||
var cost = map.get("cost");
|
||||
BigDecimal costTotal = new BigDecimal(cost).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP)
|
||||
result.put("total", costTotal);
|
||||
List list = db.select("SELECT * FROM investment_plan WHERE #project")
|
||||
BigDecimal totalCost = db.selectValue("SELECT SUM(engineering_cost) FROM engineering WHERE DATE_FORMAT(start_time, '%Y') = DATE_FORMAT(now(), '%Y') AND #project")
|
||||
Map contractMap = db.selectOne("SELECT SUM(contract_amount) contractTotalAmount, SUM(settlement_amount) settlementAount FROM investment_contract WHERE #project")
|
||||
Map payMap = db.selectOne("SELECT SUM(a.total_amount) payTotal, SUM(c.contract_amount) amountTotal FROM investment_payment a INNER JOIN (SELECT MAX(id) id FROM investment_payment GROUP BY contract_id) b on a.id = b.id LEFT JOIN investment_contract c on a.contract_id = c.id WHERE c.settlement_amount IS NOT NULL AND #projectalias")
|
||||
BigDecimal big = new BigDecimal(10000);
|
||||
let type = ["年初预算","年中调剂","上级补助资金","专项债券资金","三年滚动预算"]
|
||||
for (item in type) {
|
||||
BigDecimal total = new BigDecimal(0)
|
||||
List amount = list.filter(l => l.funding_source.equals(item)).map(l => l.amount)
|
||||
for (name in amount) {
|
||||
total = total.add(new BigDecimal(name))
|
||||
}
|
||||
result.put(item, total.divide(big, 2, BigDecimal.ROUND_HALF_UP));
|
||||
}
|
||||
realPayAmountTotal = realPayAmountTotal.divide(big, 2, BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal contractTotalAmount = contractMap.get("contractTotalAmount").divide(big, 2, BigDecimal.ROUND_HALF_UP)
|
||||
BigDecimal settlementAount = contractMap.get("settlementAount").divide(big, 2, BigDecimal.ROUND_HALF_UP)
|
||||
result.put("totalCost", new BigDecimal(totalCost).divide(big, 2, BigDecimal.ROUND_HALF_UP));
|
||||
result.put("totalCostRatio", new BigDecimal(totalCost).divide(big, 2, BigDecimal.ROUND_HALF_UP).divide(costTotal, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue());
|
||||
result.put("contractTotalAmount", contractTotalAmount);
|
||||
result.put("contractTotalAmountRatio", realPayAmountTotal.divide(contractTotalAmount, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue());
|
||||
result.put("settlementAount", settlementAount);
|
||||
result.put("settlementAountRatio", realPayAmountTotal.divide(settlementAount, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue());
|
||||
BigDecimal unPay = payMap.get("amountTotal").subtract(payMap.get("payTotal"));
|
||||
result.put("unPay", unPay.divide(big, 2, BigDecimal.ROUND_HALF_UP));
|
||||
// result.put("paymentByMonth", paymentByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("applyAmountByMonth", applyAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("realPayAmountByMonth", realPayAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// var unPayAmountByMonth = applyAmountByMonth.subtract(realPayAmountByMonth);
|
||||
// result.put("unPayAmountByMonth", unPayAmountByMonth > 0 ? unPayAmountByMonth.divide(big, 2, BigDecimal.ROUND_HALF_UP) : 0)
|
||||
|
||||
// result.put("totalAmount", totalAmount.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("payRatio", realPayAmountTotal == 0 ? 0 : realPayAmountTotal.divide(totalAmount, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
result.put("paymentTotal", paymentTotal.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("applyAmountTotal", applyAmountTotal.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("settlementAmount", settlementAmount.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("payRatio1", realPayAmountTotal == 0 ? 0 : realPayAmountTotal.divide(settlementAmount, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
result.put("settlementAmountByYear", settlementAmountByYear.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("payRatio2", realPayAmountByYear == 0 ? 0 : realPayAmountByYear.divide(totalAmountByYear, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
result.put("realPayAmountTotal", realPayAmountTotal.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
result.put("realPayAmountByYear", realPayAmountByYear.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("applyAmountTotal", applyAmountTotal.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("settlementAmount", settlementAmount.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("payRatio1", realPayAmountTotal == 0 ? 0 : realPayAmountTotal.divide(settlementAmount, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
// result.put("settlementAmountByYear", settlementAmountByYear.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
// result.put("payRatio2", realPayAmountByYear == 0 ? 0 : realPayAmountByYear.divide(totalAmountByYear, 4, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")).doubleValue())
|
||||
result.put("realPayAmountTotal", realPayAmountTotal)
|
||||
// result.put("realPayAmountByYear", realPayAmountByYear.divide(big, 2, BigDecimal.ROUND_HALF_UP))
|
||||
return result
|
||||
@ -5,7 +5,7 @@
|
||||
"groupId" : "1f3d3e5b9fe340bab84de67b0de08f44",
|
||||
"name" : "进度管理",
|
||||
"createTime" : null,
|
||||
"updateTime" : 1718709176045,
|
||||
"updateTime" : 1718776895963,
|
||||
"lock" : null,
|
||||
"createBy" : null,
|
||||
"updateBy" : "admin",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user