修复发票超额控制问题

This commit is contained in:
2025-10-27 23:16:14 +08:00
parent 5881d9e9c7
commit 3237265dfd
2 changed files with 98 additions and 36 deletions

View File

@@ -330,5 +330,34 @@ WHERE
var sql = string.Format(sqlTemp, orgId, contractNo, k3retrunAmount, retrunAmount, orderAmount);
return DBServiceHelper.Execute(ctx, sql);
}
/// <summary>
/// 获取已提交发票金额
/// </summary>
/// <param name="orgId"></param>
/// <param name="contractNo"></param>
/// <returns></returns>
internal decimal GetSubmitedAmount(string orgId, string contractNo)
{
var sqlTemp = $@"/*dialect*/SELECT
ISNULL (SUM(t1e_O.FALLAMOUNT), 0) AS SubmitAmount
FROM
T_IV_SALESIC t1
LEFT JOIN T_IV_SALESICENTRY t1e ON t1.FID = t1e.FID
LEFT JOIN T_IV_SALESICENTRY_O t1e_O ON t1e.FENTRYID = t1e_O.FENTRYID
WHERE
1 = 1
AND t1.FDOCUMENTSTATUS = 'B'
AND t1e.F_CONTRACTNO = '{contractNo}'
AND t1.FSALEORGID = '{orgId}'
";
var sql = string.Format(sqlTemp, orgId, contractNo);
var result = DBServiceHelper.ExecuteDynamicObject(ctx, sql);
if (result.Count == 0)
{
return 0;
}
return Convert.ToDecimal(result[0]["SubmitAmount"]);
}
}
}