feat(tplus): 新增同步暂存与任务管理迁移和环境配置
This commit is contained in:
1 parent
823d9f02ec
commit
78bef43c06
29 files changed
+1326
-5
No files matched your search
@@ -0,0 +1,68 @@
|
||||
-- 关联核验固定查询,全部只读;源库仍按 SQL Server 2008 R2 语法编写。
|
||||
-- @query source_version
|
||||
SELECT CONVERT(varchar(80), SERVERPROPERTY('ProductVersion')) AS source_version;
|
||||
|
||||
-- @query voucher_types
|
||||
SELECT ID AS id, code, name FROM dbo.SM_VoucherType ORDER BY ID;
|
||||
|
||||
-- @query state_enums
|
||||
SELECT i.ID AS id, i.Code AS code, i.Name AS name, e.Name AS enum_name
|
||||
FROM dbo.eap_EnumItem AS i
|
||||
LEFT JOIN dbo.eap_Enum AS e ON e.id = i.idEnum
|
||||
WHERE i.ID IN (
|
||||
SELECT voucherstate FROM dbo.ARAP_ReceivePayment
|
||||
UNION SELECT cancelState FROM dbo.ARAP_ReceivePayment
|
||||
)
|
||||
ORDER BY i.ID;
|
||||
|
||||
-- @query receipt_kinds
|
||||
SELECT CASE h.isReceiveFlag WHEN 1 THEN 'RECEIVE' WHEN 0 THEN 'PAYMENT' ELSE 'UNKNOWN' END AS voucher_type_code,
|
||||
CASE h.isReceiveFlag WHEN 1 THEN N'收款' WHEN 0 THEN N'付款' ELSE N'未知方向' END AS voucher_type_name,
|
||||
h.isReceiveFlag AS receive_flag, COUNT_BIG(*) AS row_count
|
||||
FROM dbo.ARAP_ReceivePayment AS h
|
||||
GROUP BY h.isReceiveFlag;
|
||||
|
||||
-- @query receipt_line_kinds
|
||||
SELECT b.idvouchertype AS voucher_type_id, v.name AS voucher_type_name,
|
||||
h.isReceiveFlag AS receive_flag, COUNT_BIG(*) AS row_count
|
||||
FROM dbo.ARAP_ReceivePayment_b AS b
|
||||
LEFT JOIN dbo.SM_VoucherType AS v ON v.ID = b.idvouchertype
|
||||
LEFT JOIN dbo.ARAP_ReceivePayment AS h ON h.ID = b.idArapReceivePaymentDTO
|
||||
GROUP BY b.idvouchertype, v.name, h.isReceiveFlag;
|
||||
|
||||
-- @query sales_links
|
||||
SELECT COUNT_BIG(*) AS row_count,
|
||||
COALESCE(SUM(CASE WHEN h.ID IS NOT NULL THEN 1 ELSE 0 END), 0) AS delivery_matches,
|
||||
COALESCE(SUM(CASE WHEN d.ID IS NOT NULL THEN 1 ELSE 0 END), 0) AS detail_matches,
|
||||
COALESCE(SUM(CASE WHEN o.ID IS NOT NULL THEN 1 ELSE 0 END), 0) AS direct_order_matches,
|
||||
COALESCE(SUM(CASE WHEN detail_order.ID IS NOT NULL THEN 1 ELSE 0 END), 0) AS detail_order_matches,
|
||||
COALESCE(SUM(CASE WHEN (o.ID IS NOT NULL OR detail_order.ID IS NOT NULL)
|
||||
AND NOT (b.saleorderid > 0 AND d.saleOrderId > 0 AND b.saleorderid <> d.saleOrderId)
|
||||
THEN 1 ELSE 0 END), 0) AS unambiguous_order_matches,
|
||||
COALESCE(SUM(CASE WHEN b.saleorderid > 0 AND o.ID IS NULL THEN 1 ELSE 0 END), 0) AS invalid_order_ids,
|
||||
COALESCE(SUM(CASE WHEN b.saleorderid > 0 AND d.saleOrderId > 0
|
||||
AND b.saleorderid <> d.saleOrderId THEN 1 ELSE 0 END), 0) AS conflicting_order_ids
|
||||
FROM dbo.ARAP_ReceivePayment_b AS b
|
||||
JOIN dbo.ARAP_ReceivePayment AS p ON p.ID = b.idArapReceivePaymentDTO
|
||||
LEFT JOIN dbo.SA_SaleDelivery AS h ON h.ID = b.voucherID
|
||||
LEFT JOIN dbo.SA_SaleDelivery_b AS d ON d.ID = b.voucherDetailID
|
||||
AND d.idSaleDeliveryDTO = b.voucherID
|
||||
LEFT JOIN dbo.SA_SaleOrder AS o ON o.ID = b.saleorderid
|
||||
LEFT JOIN dbo.SA_SaleOrder AS detail_order ON detail_order.ID = d.saleOrderId
|
||||
WHERE b.idvouchertype = :sale_delivery_type_id AND p.isReceiveFlag = :receive_flag;
|
||||
|
||||
-- @query order_coverage
|
||||
WITH delivery_orders AS (
|
||||
SELECT idSaleDeliveryDTO, COUNT(DISTINCT saleOrderId) AS order_count
|
||||
FROM dbo.SA_SaleDelivery_b
|
||||
WHERE saleOrderId > 0
|
||||
GROUP BY idSaleDeliveryDTO
|
||||
)
|
||||
SELECT COUNT_BIG(*) AS row_count,
|
||||
COALESCE(SUM(CASE WHEN d.order_count IS NULL THEN 1 ELSE 0 END), 0) AS without_order,
|
||||
COALESCE(SUM(CASE WHEN d.order_count = 1 THEN 1 ELSE 0 END), 0) AS single_order,
|
||||
COALESCE(SUM(CASE WHEN d.order_count > 1 THEN 1 ELSE 0 END), 0) AS multiple_orders
|
||||
FROM dbo.ARAP_ReceivePayment_b AS b
|
||||
JOIN dbo.ARAP_ReceivePayment AS p ON p.ID = b.idArapReceivePaymentDTO
|
||||
LEFT JOIN delivery_orders AS d ON d.idSaleDeliveryDTO = b.voucherID
|
||||
WHERE b.idvouchertype = :sale_delivery_type_id AND p.isReceiveFlag = :receive_flag;
|
||||
Reference in new issue
Block a user