From e055fe94078d4864f2e98718fc6e4e5008801429 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=95=8F=E5=81=A5=20=E9=82=B1?= Date: Sun, 15 Dec 2024 21:20:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Entity/BaseResult.cs | 2 + .../ST/USERPCO.cs | 44 ++++++++++++++++++- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/UFIDA.U8.Framework.Api.ControlObject/Entity/BaseResult.cs b/UFIDA.U8.Framework.Api.ControlObject/Entity/BaseResult.cs index dea254d..a1f7640 100644 --- a/UFIDA.U8.Framework.Api.ControlObject/Entity/BaseResult.cs +++ b/UFIDA.U8.Framework.Api.ControlObject/Entity/BaseResult.cs @@ -10,6 +10,8 @@ namespace UFIDA.U8.Framework.Api.ControlObject.Entity { public bool bSuccess { get; set; } public string message { get; set; } + public string voucherCode { get; set; } + public string voucherId { get; set; } public T result { get; set; } } } diff --git a/UFIDA.U8.Framework.Api.ControlObject/ST/USERPCO.cs b/UFIDA.U8.Framework.Api.ControlObject/ST/USERPCO.cs index cb9d3c2..c7f9bfb 100644 --- a/UFIDA.U8.Framework.Api.ControlObject/ST/USERPCO.cs +++ b/UFIDA.U8.Framework.Api.ControlObject/ST/USERPCO.cs @@ -1,4 +1,5 @@ -using log4net; +using ADODB; +using log4net; using MSXML2; using System; using System.Collections.Generic; @@ -99,6 +100,47 @@ namespace UFIDA.U8.Framework.Api.ControlObject.ST } else { + var rst = new Recordset(); + rst.Open($"SELECT CardNumber,BTTblName,BTQName,BWTblName,BWQName,VchListQName,VchTblPrimarykeyNames,ReceiptNOFieldName FROM dbo.vouchers WHERE CardNumber='{cCardNum}'", baseLogin.Connection); + + if (rst.BOF || rst.EOF) + { + res.bSuccess = false; + res.result = $"已在U8生成单据ID为{vouchId}的单据,但是未能查询到该单据的配置信息!"; + } + else + { + rst.MoveFirst(); + var fieldName = $"{rst.Fields["VchTblPrimarykeyNames"].Value}"; + var codeName = $"{rst.Fields["ReceiptNOFieldName"].Value}"; + if (string.IsNullOrWhiteSpace(fieldName) || string.IsNullOrWhiteSpace(codeName)) + { + res.voucherCode = $"{res.voucherId}"; + } + else + { + if (codeName.Contains("{##}")) + { + codeName = codeName.Split('{', '#', '#', '}')[0]; + } + + var strSql = $"SELECT {codeName} AS cCode FROM {rst.Fields["BTTblName"].Value} WHERE {fieldName}='{vouchId}'"; + rst.Close(); + + rst.Open(strSql, baseLogin.Connection); + + if (rst.EOF || rst.BOF) + { + res.voucherCode = ""; + } + else + { + rst.MoveFirst(); + res.voucherCode = $"{rst.Fields["cCode"].Value}"; + } + } + } + res.message = "新增成功"; res.result = vouchId; }