using Business.Core.Utilities; using Business.EntityFrameworkCore; using Business.ResourceExamineManagement.Dto; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using System; using System.Collections.Generic; using System.Linq; using Volo.Abp.Application.Services; namespace Business.ResourceExamineManagement { public class SerialNumberAppService : ApplicationService { private readonly BusinessDbContext _businessDbContext; public SerialNumberAppService(BusinessDbContext businessDbContext) { _businessDbContext = businessDbContext; } /// /// 流水号生成 /// /// /// /// public string GetSerialNumber(long id) { string sn = string.Empty; if (id > long.MinValue) { IConfiguration configuration = new ConfigurationBuilder().SetBasePath(Environment.CurrentDirectory).AddJsonFile("appsettings.json").Build(); var tfSite = configuration["appSettings:ThinkFlow"]; string url = tfSite + "/ThinkFlowApi/SerialNumber/GetMaxSerialNumber?id=" + id.ToString(); /*JObject jobect = new() { { "id", id } }; string postJson = jobect.ToString();*/ string json = HttpHelper.HttpPost(url, ""); sn = json; } return sn; } /// /// 获取单号 /// /// /// 类型 /// 步长 /// 用户账号 /// /// public List GetBillNo(string domain, string NbrType, int Increment, string UserNo, int IsDopCall) { string sql = string.Format("CALL pr_SFM_GetOrdNbr('{0}', '{1}', {2}, '{3}', {4}, @NbrResult);", domain, NbrType, Increment, UserNo, IsDopCall); var getnbr = _businessDbContext.GetNbr.FromSqlRaw(sql).ToList(); return getnbr; } /// /// 获取单号 /// /// /// 类型 /// 步长 /// 用户账号 /// /// public string GetSeqIdList(string domain, int Increment, int IsDopCall) { //CALL pr_SFM_GetSequenceID ('8010',1,@p_SequenceID,1,@p_ReturnMsg) //string sql = string.Format("exec pr_SFM_GetSequenceID @Domain='{0}',@Increment={1},@IsDopCall={2}", domain, Increment, IsDopCall); string sql = string.Format("CALL pr_SFM_GetSequenceID ('{0}',{1},@p_SequenceID,{2},@p_ReturnMsg);", domain, Increment, IsDopCall); var rst = _businessDbContext.GetNbr.FromSqlRaw(sql).ToList(); if (rst.Any()) { return rst[0].NbrResult.ToString(); } return ""; } } }