From 5d080021659f60d24671d82d11c2db62b66075cd Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期一, 25 五月 2026 10:07:39 +0800
Subject: [PATCH] feat:石煤机加工承揽合同模版以及统计数据测试调整
---
platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml | 353 ++++++++++++++++++++++++++++++-------------------
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java | 16 ++
platformx-business-finance-biz/src/main/resources/template/ymjjgclht.docx | 0
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentSlip.java | 8 +
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentConfirmAddDTO.java | 2
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentOffsetServiceImpl.java | 17 ++
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractDetailVo.java | 2
7 files changed, 256 insertions(+), 142 deletions(-)
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentConfirmAddDTO.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentConfirmAddDTO.java
index 6589e0b..67458b7 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentConfirmAddDTO.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/dto/PaymentConfirmAddDTO.java
@@ -23,5 +23,7 @@
*/
private String inOrOut;
+ private String payType;
+
private BigDecimal transationAmount;
}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentSlip.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentSlip.java
index 87105f0..a7005aa 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentSlip.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PaymentSlip.java
@@ -28,6 +28,14 @@
@Column(columnDefinition="bigint comment '瀹㈠晢ID'")
private Long busGuestId;
+ @Schema(description = "鏀舵鍗曚綅")
+ @Column(columnDefinition="VARCHAR(64) comment '鏀舵鍗曚綅'")
+ private String Payee;
+
+ @Schema(description = "鏀舵鍗曚綅ID")
+ @Column(columnDefinition="bigint comment '鏀舵鍗曚綅ID'")
+ private Long PayeeCompId;
+
@Schema(description = "鏀舵鏃ユ湡")
@Column(columnDefinition="datetime comment '鏀舵鏃ユ湡'")
private Date paymentTime;
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractDetailVo.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractDetailVo.java
index 72682e9..b0d71f2 100644
--- a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractDetailVo.java
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractDetailVo.java
@@ -1,7 +1,5 @@
package com.by4cloud.platformx.business.vo;
-import com.by4cloud.platformx.business.dto.ContractPaymentScheduleAddDTO;
-import com.by4cloud.platformx.business.dto.ContractSubjectMatterAddDTO;
import com.by4cloud.platformx.business.entity.ContractPaymentSchedule;
import com.by4cloud.platformx.business.entity.ContractSubjectMatter;
import com.fasterxml.jackson.annotation.JsonFormat;
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
index 81b05af..8bf75cf 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentConfirmServiceImpl.java
@@ -217,6 +217,7 @@
;
}
}else {
+
List<Contract> customerContractList = contractService.list(Wrappers.<Contract>lambdaQuery().eq(Contract::getPartyAId, addDTO.getBusGuestId())
.eq(Contract::getPartyBId,SecurityUtils.getUser().getCompId()).orderByAsc(Contract::getCreateTime).apply(" amount != paid_amount"));
if (ArrayUtil.isEmpty(customerContractList.toArray())) {
@@ -229,6 +230,15 @@
if (ObjUtil.isNull(customer)) {
return R.failed("瀹㈠晢鏌ヨ澶辫触");
}
+ //鏂板浠樻鍗�
+ PaymentSlip slip = new PaymentSlip();
+ slip.setBusGuestId(customer.getId());
+ slip.setBusGuestName(customer.getCompanyName());
+ slip.setPayeeCompId(SecurityUtils.getUser().getCompId());
+ slip.setPaymentTime(addDTO.getConfirmTime());
+ slip.setPaymentAmount(addDTO.getTransationAmount());
+ slip.setPayType(addDTO.getPayType());
+ paymentSlipMapper.insert(slip);
BigDecimal transtionAmount = addDTO.getTransationAmount();
//鍓╀綑浠樻
@@ -537,7 +547,7 @@
return;
}
//淇濆瓨浠樻鍗�
- Boolean codeFlag = savePaymentSlip(customer,record);
+ Boolean codeFlag = savePaymentSlip(customer,record,dept);
if (codeFlag){
log.error("浠樻鍗昳d锛歿},浠樻鍗曞凡瀛樺湪");
return;
@@ -708,10 +718,12 @@
}
}
- private Boolean savePaymentSlip(BusinessCustomer customer, JSONObject record) {
+ private Boolean savePaymentSlip(BusinessCustomer customer, JSONObject record,SysDept dept) {
PaymentSlip slip = new PaymentSlip();
slip.setBusGuestId(customer.getId());
slip.setBusGuestName(customer.getCompanyName());
+ slip.setPayee(dept.getName());
+ slip.setPayeeCompId(dept.getDeptId());
slip.setPaymentTime(ObjUtil.isNotNull(record.get("billDate"))?
DateUtil.parse(record.getString("billDate"), DatePattern.NORM_DATETIME_FORMAT):new Date());
slip.setPaymentAmount(ObjUtil.isNotNull(record.get("bodyItemOriTaxExcludedAmount"))?record.getBigDecimal("bodyItemOriTaxExcludedAmount"):new BigDecimal("0"));
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentOffsetServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentOffsetServiceImpl.java
index c6a44b4..fcc0580 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentOffsetServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/PaymentOffsetServiceImpl.java
@@ -11,6 +11,7 @@
import com.by4cloud.platformx.business.service.ContractService;
import com.by4cloud.platformx.business.service.PaymentOffsetService;
import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.security.util.SecurityUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -33,12 +34,28 @@
private final ContractPaymentScheduleMapper contractPaymentScheduleMapper;
private final CurrentOverdueMapper currentOverdueMapper;
private final HistoryOverdueMapper historyOverdueMapper;
+ private final PaymentSlipMapper paymentSlipMapper;
+
@Override
public R add(PaymentOffset paymentOffset) {
baseMapper.insert(paymentOffset);
+
Contract contract = contractService.getById(paymentOffset.getContractId());
+ //鏂板浠樻鍗�
+ PaymentSlip slip = new PaymentSlip();
+ slip.setBusGuestId(paymentOffset.getBusGuestId());
+ slip.setBusGuestName(paymentOffset.getBusGuestName());
+ slip.setPayeeCompId(contract.getPartyBId());
+ slip.setPayee(contract.getPartyB());
+ slip.setPaymentTime(paymentOffset.getOffsetTime());
+ slip.setPaymentAmount(paymentOffset.getOffsetAmount());
+ slip.setPayType("3");
+ paymentSlipMapper.insert(slip);
+
+
+
PaymentConfirm lastConfirm = paymentConfirmMapper.selectOne(Wrappers.<PaymentConfirm>lambdaQuery().eq(PaymentConfirm::getContractId,contract.getId())
.orderByDesc(PaymentConfirm::getCreateTime).last("limit 1"));
BigDecimal lastTotal = new BigDecimal("0");
diff --git a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
index 5d870b5..0aea4e5 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
@@ -186,69 +186,66 @@
SELECT
compName,
SUM(CASE WHEN month_num = 1 THEN total_amount ELSE 0 END) AS 'srMonth1',
- SUM(CASE WHEN month_num = 1 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth1',
- SUM(CASE WHEN month_num = 1 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth1',
- SUM(CASE WHEN month_num = 1 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth1',
+ SUM(CASE WHEN month_num = 1 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth1',
+ SUM(CASE WHEN month_num = 1 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth1',
+ SUM(CASE WHEN month_num = 1 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth1',
SUM(CASE WHEN month_num = 2 THEN total_amount ELSE 0 END) AS 'srMonth2',
- SUM(CASE WHEN month_num = 2 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth2',
- SUM(CASE WHEN month_num = 2 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth2',
- SUM(CASE WHEN month_num = 2 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth2',
+ SUM(CASE WHEN month_num = 2 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth2',
+ SUM(CASE WHEN month_num = 2 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth2',
+ SUM(CASE WHEN month_num = 2 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth2',
SUM(CASE WHEN month_num = 3 THEN total_amount ELSE 0 END) AS 'srMonth3',
- SUM(CASE WHEN month_num = 3 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth3',
- SUM(CASE WHEN month_num = 3 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth3',
- SUM(CASE WHEN month_num = 3 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth3',
+ SUM(CASE WHEN month_num = 3 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth3',
+ SUM(CASE WHEN month_num = 3 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth3',
+ SUM(CASE WHEN month_num = 3 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth3',
SUM(CASE WHEN month_num = 4 THEN total_amount ELSE 0 END) AS 'srMonth4',
- SUM(CASE WHEN month_num = 4 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth4',
- SUM(CASE WHEN month_num = 4 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth4',
- SUM(CASE WHEN month_num = 4 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth4',
+ SUM(CASE WHEN month_num = 4 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth4',
+ SUM(CASE WHEN month_num = 4 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth4',
+ SUM(CASE WHEN month_num = 4 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth4',
SUM(CASE WHEN month_num = 5 THEN total_amount ELSE 0 END) AS 'srMonth5',
SUM(CASE WHEN month_num = 5 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth5',
SUM(CASE WHEN month_num = 5 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth5',
SUM(CASE WHEN month_num = 5 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth5',
SUM(CASE WHEN month_num = 6 THEN total_amount ELSE 0 END) AS 'srMonth6',
- SUM(CASE WHEN month_num = 6 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth6',
- SUM(CASE WHEN month_num = 6 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth6',
- SUM(CASE WHEN month_num = 6 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth6',
+ SUM(CASE WHEN month_num = 6 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth6',
+ SUM(CASE WHEN month_num = 6 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth6',
+ SUM(CASE WHEN month_num = 6 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth6',
SUM(CASE WHEN month_num = 7 THEN total_amount ELSE 0 END) AS 'srMonth7',
- SUM(CASE WHEN month_num = 7 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth7',
- SUM(CASE WHEN month_num = 7 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth7',
- SUM(CASE WHEN month_num = 7 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth7',
+ SUM(CASE WHEN month_num = 7 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth7',
+ SUM(CASE WHEN month_num = 7 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth7',
+ SUM(CASE WHEN month_num = 7 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth7',
SUM(CASE WHEN month_num = 8 THEN total_amount ELSE 0 END) AS 'srMonth8',
- SUM(CASE WHEN month_num = 8 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth8',
- SUM(CASE WHEN month_num = 8 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth8',
- SUM(CASE WHEN month_num = 8 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth8',
+ SUM(CASE WHEN month_num = 8 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth8',
+ SUM(CASE WHEN month_num = 8 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth8',
+ SUM(CASE WHEN month_num = 8 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth8',
SUM(CASE WHEN month_num = 9 THEN total_amount ELSE 0 END) AS 'srMonth9',
- SUM(CASE WHEN month_num = 9 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth9',
- SUM(CASE WHEN month_num = 9 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth9',
- SUM(CASE WHEN month_num = 9 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth9',
+ SUM(CASE WHEN month_num = 9 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth9',
+ SUM(CASE WHEN month_num = 9 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth9',
+ SUM(CASE WHEN month_num = 9 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth9',
SUM(CASE WHEN month_num = 10 THEN total_amount ELSE 0 END) AS 'srMonth10',
- SUM(CASE WHEN month_num = 10 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth10',
- SUM(CASE WHEN month_num = 10 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth10',
- SUM(CASE WHEN month_num = 10 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth10',
+ SUM(CASE WHEN month_num = 10 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth10',
+ SUM(CASE WHEN month_num = 10 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth10',
+ SUM(CASE WHEN month_num = 10 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth10',
SUM(CASE WHEN month_num = 11 THEN total_amount ELSE 0 END) AS 'srMonth11',
- SUM(CASE WHEN month_num = 11 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth11',
- SUM(CASE WHEN month_num = 11 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth11',
- SUM(CASE WHEN month_num = 11 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth11',
+ SUM(CASE WHEN month_num = 11 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth11',
+ SUM(CASE WHEN month_num = 11 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth11',
+ SUM(CASE WHEN month_num = 11 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth11',
SUM(CASE WHEN month_num = 12 THEN total_amount ELSE 0 END) AS 'srMonth12',
- SUM(CASE WHEN month_num = 12 AND pay_type = 0 THEN total_amount ELSE 0 END) AS 'xhMonth12',
- SUM(CASE WHEN month_num = 12 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'cdMonth12',
- SUM(CASE WHEN month_num = 12 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'qtMonth12'
+ SUM(CASE WHEN month_num = 12 AND pay_type = 1 THEN total_amount ELSE 0 END) AS 'xhMonth12',
+ SUM(CASE WHEN month_num = 12 AND pay_type = 2 THEN total_amount ELSE 0 END) AS 'cdMonth12',
+ SUM(CASE WHEN month_num = 12 AND pay_type = 3 THEN total_amount ELSE 0 END) AS 'qtMonth12'
FROM (
- SELECT
- COALESCE(c.party_b, '鏈煡鍗曚綅') AS compName,
- MONTH(confirm_time) AS month_num,
- pay_type,
- COALESCE(transation_amount, 0) AS total_amount
- FROM payment_confirm pc,contract c
- WHERE
-
- pc.del_flag = '0'
- And c.del_flag = '0'
- AND pc.contract_id = c.id
- AND confirm_time IS NOT NULL
- AND transation_amount IS NOT NULL
- AND YEAR(confirm_time) = #{queryDTO.year}
- AND party_b_id IN
+ SELECT
+ COALESCE(pc.payee_comp_id, '鏈煡鍗曚綅') AS compName,
+ MONTH(payment_time) AS month_num,
+ pay_type,
+ COALESCE(payment_amount, 0) AS total_amount
+ FROM payment_slip pc
+ WHERE
+ pc.del_flag = '0'
+ AND payment_time IS NOT NULL
+ AND payment_amount IS NOT NULL
+ AND YEAR(payment_time) = #{queryDTO.year}
+ AND payee_comp_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
@@ -260,10 +257,10 @@
resultType="com.by4cloud.platformx.business.vo.ContractIncomeAnalysisCompVo">
SELECT
months.yf,
- COALESCE ( SUM( transation_amount ), 0 ) AS sr,
- COALESCE ( SUM( CASE WHEN pay_type = 0 THEN COALESCE ( transation_amount, 0 ) ELSE 0 END ), 0 ) AS xh,
- COALESCE ( SUM( CASE WHEN pay_type = 1 THEN COALESCE ( transation_amount, 0 ) ELSE 0 END ), 0 ) AS cd,
- COALESCE ( SUM( CASE WHEN pay_type = 2 THEN COALESCE ( transation_amount, 0 ) ELSE 0 END ), 0 ) AS qt
+ COALESCE ( SUM( payment_amount ), 0 ) AS sr,
+ COALESCE ( SUM( CASE WHEN pay_type = 1 THEN COALESCE ( payment_amount, 0 ) ELSE 0 END ), 0 ) AS xh,
+ COALESCE ( SUM( CASE WHEN pay_type = 2 THEN COALESCE ( payment_amount, 0 ) ELSE 0 END ), 0 ) AS cd,
+ COALESCE ( SUM( CASE WHEN pay_type = 3 THEN COALESCE ( payment_amount, 0 ) ELSE 0 END ), 0 ) AS qt
FROM
(
SELECT
@@ -291,11 +288,11 @@
SELECT
'12鏈�'
) AS months
- LEFT JOIN payment_confirm pc ON months.yf = CONCAT( MONTH ( pc.confirm_time ), '鏈�' )
+ LEFT JOIN payment_slip pc ON months.yf = CONCAT( MONTH ( pc.payment_time ), '鏈�' )
AND pc.del_flag = '0'
- AND pc.confirm_time IS NOT NULL
- AND pc.transation_amount IS NOT NULL
- AND YEAR ( pc.confirm_time ) = #{queryDTO.year}
+ AND pc.payment_time IS NOT NULL
+ AND pc.payment_amount IS NOT NULL
+ AND YEAR ( pc.payment_time ) = #{queryDTO.year}
AND pc.comp_id = #{compId}
WHERE
1 = 1
@@ -312,29 +309,37 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.area_id = b.area_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
- ) AS zgbzb,
+ 2
+ ) AS sgbzb,
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) AS jxcze,
ROUND(
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) / (
SELECT
SUM( amount )
FROM
- contract
- WHERE
- party_b_id IN
- <foreach collection="compIds" item="id" open="(" close=")" separator=",">
- #{id}
- </foreach>
+ contract c, business_customer bc
+ WHERE
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.area_id = b.area_id
+ and party_b_id IN
+ <foreach collection="compIds" item="id" open="(" close=")" separator=",">
+ #{id}
+ </foreach>
) * 100,
- 0
+ 2
) AS jxczb ,
SUM( CASE WHEN c.party_b_id = #{smjCompId} THEN c.amount ELSE 0 END ) AS smjze,
ROUND(
@@ -342,14 +347,18 @@
SELECT
SUM( amount )
FROM
- contract
- WHERE
- party_b_id IN
- <foreach collection="compIds" item="id" open="(" close=")" separator=",">
- #{id}
- </foreach>
+ contract c, business_customer bc
+ WHERE
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.area_id = b.area_id
+ and party_b_id IN
+ <foreach collection="compIds" item="id" open="(" close=")" separator=",">
+ #{id}
+ </foreach>
) * 100,
- 0
+ 2
) AS smjzb ,
SUM( CASE WHEN c.party_b_id = #{ymjCompId} THEN c.amount ELSE 0 END ) AS ymjze,
ROUND(
@@ -357,14 +366,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
- <foreach collection="compIds" item="id" open="(" close=")" separator=",">
- #{id}
- </foreach>
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.area_id = b.area_id
+ and party_b_id IN
+ <foreach collection="compIds" item="id" open="(" close=")" separator=",">
+ #{id}
+ </foreach>
) * 100,
- 0
+ 2
) AS ymjzb ,
SUM( CASE WHEN c.party_b_id = #{tfCompId} THEN c.amount ELSE 0 END ) AS tfze,
ROUND(
@@ -372,14 +385,18 @@
SELECT
SUM( amount )
FROM
- contract
- WHERE
- party_b_id IN
+ contract c, business_customer bc
+ WHERE
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.area_id = b.area_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS tfzb
FROM
contract c
@@ -401,29 +418,37 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.industry_id = b.industry_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
- ) AS zgbzb,
+ 2
+ ) AS sgbzb,
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) AS jxcze,
ROUND(
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) / (
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.industry_id = b.industry_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS jxczb ,
SUM( CASE WHEN c.party_b_id = #{smjCompId} THEN c.amount ELSE 0 END ) AS smjze,
ROUND(
@@ -431,14 +456,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.industry_id = b.industry_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS smjzb ,
SUM( CASE WHEN c.party_b_id = #{ymjCompId} THEN c.amount ELSE 0 END ) AS ymjze,
ROUND(
@@ -446,14 +475,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.industry_id = b.industry_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS ymjzb ,
SUM( CASE WHEN c.party_b_id = #{tfCompId} THEN c.amount ELSE 0 END ) AS tfze,
ROUND(
@@ -461,14 +494,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.industry_id = b.industry_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS tfzb
FROM
contract c
@@ -490,29 +527,37 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.class_id = b.class_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
- ) AS zgbzb,
+ 2
+ ) AS sgbzb,
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) AS jxcze,
ROUND(
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) / (
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.class_id = b.class_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS jxczb ,
SUM( CASE WHEN c.party_b_id = #{smjCompId} THEN c.amount ELSE 0 END ) AS smjze,
ROUND(
@@ -520,14 +565,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.class_id = b.class_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS smjzb ,
SUM( CASE WHEN c.party_b_id = #{ymjCompId} THEN c.amount ELSE 0 END ) AS ymjze,
ROUND(
@@ -535,14 +584,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.class_id = b.class_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS ymjzb ,
SUM( CASE WHEN c.party_b_id = #{tfCompId} THEN c.amount ELSE 0 END ) AS tfze,
ROUND(
@@ -550,14 +603,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.class_id = b.class_id
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS tfzb
FROM
contract c
@@ -580,29 +637,37 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.export_service_attr = b.export_service_attr
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
- ) AS zgbzb,
+ 2
+ ) AS sgbzb,
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) AS jxcze,
ROUND(
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) / (
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.export_service_attr = b.export_service_attr
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS jxczb ,
SUM( CASE WHEN c.party_b_id = #{smjCompId} THEN c.amount ELSE 0 END ) AS smjze,
ROUND(
@@ -610,14 +675,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.export_service_attr = b.export_service_attr
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS smjzb ,
SUM( CASE WHEN c.party_b_id = #{ymjCompId} THEN c.amount ELSE 0 END ) AS ymjze,
ROUND(
@@ -625,14 +694,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.export_service_attr = b.export_service_attr
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS ymjzb ,
SUM( CASE WHEN c.party_b_id = #{tfCompId} THEN c.amount ELSE 0 END ) AS tfze,
ROUND(
@@ -640,14 +713,18 @@
SELECT
SUM( amount )
FROM
- contract
+ contract c, business_customer bc
WHERE
- party_b_id IN
+ bc.id = c.party_a_id
+ and c.del_flag = '0'
+ and bc.del_flag = '0'
+ and bc.export_service_attr = b.export_service_attr
+ and party_b_id IN
<foreach collection="compIds" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS tfzb
FROM
contract c
@@ -676,8 +753,8 @@
#{id}
</foreach>
) * 100,
- 0
- ) AS zgbzb,
+ 2
+ ) AS sgbzb,
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) AS jxcze,
ROUND(
SUM( CASE WHEN c.party_b_id = #{jxcCompId} THEN c.amount ELSE 0 END ) / (
@@ -691,7 +768,7 @@
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS jxczb ,
SUM( CASE WHEN c.party_b_id = #{smjCompId} THEN c.amount ELSE 0 END ) AS smjze,
ROUND(
@@ -706,7 +783,7 @@
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS smjzb ,
SUM( CASE WHEN c.party_b_id = #{ymjCompId} THEN c.amount ELSE 0 END ) AS ymjze,
ROUND(
@@ -721,7 +798,7 @@
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS ymjzb ,
SUM( CASE WHEN c.party_b_id = #{tfCompId} THEN c.amount ELSE 0 END ) AS tfze,
ROUND(
@@ -736,7 +813,7 @@
#{id}
</foreach>
) * 100,
- 0
+ 2
) AS tfzb
FROM
contract c
diff --git a/platformx-business-finance-biz/src/main/resources/template/ymjjgclht.docx b/platformx-business-finance-biz/src/main/resources/template/ymjjgclht.docx
new file mode 100644
index 0000000..3f268e1
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/resources/template/ymjjgclht.docx
Binary files differ
--
Gitblit v1.9.1