SerialNumberAppService.cs 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. using Business.Core.Utilities;
  2. using Business.EntityFrameworkCore;
  3. using Business.ResourceExamineManagement.Dto;
  4. using Microsoft.EntityFrameworkCore;
  5. using Microsoft.Extensions.Configuration;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Linq;
  9. using Volo.Abp.Application.Services;
  10. namespace Business.ResourceExamineManagement
  11. {
  12. public class SerialNumberAppService : ApplicationService
  13. {
  14. private readonly BusinessDbContext _businessDbContext;
  15. public SerialNumberAppService(BusinessDbContext businessDbContext) {
  16. _businessDbContext = businessDbContext;
  17. }
  18. /// <summary>
  19. /// 流水号生成
  20. /// </summary>
  21. /// <param name="id"></param>
  22. /// <returns></returns>
  23. /// <exception cref="NotImplementedException"></exception>
  24. public string GetSerialNumber(long id)
  25. {
  26. string sn = string.Empty;
  27. if (id > long.MinValue)
  28. {
  29. IConfiguration configuration = new ConfigurationBuilder().SetBasePath(Environment.CurrentDirectory).AddJsonFile("appsettings.json").Build();
  30. var tfSite = configuration["appSettings:ThinkFlow"];
  31. string url = tfSite + "/ThinkFlowApi/SerialNumber/GetMaxSerialNumber?id=" + id.ToString();
  32. /*JObject jobect = new() {
  33. { "id", id }
  34. };
  35. string postJson = jobect.ToString();*/
  36. string json = HttpHelper.HttpPost(url, "");
  37. sn = json;
  38. }
  39. return sn;
  40. }
  41. /// <summary>
  42. /// 获取单号
  43. /// </summary>
  44. /// <param name="domain"></param>
  45. /// <param name="NbrType">类型</param>
  46. /// <param name="Increment">步长</param>
  47. /// <param name="UserNo">用户账号</param>
  48. /// <param name="IsDopCall"></param>
  49. /// <returns></returns>
  50. public List<GetNbr> GetBillNo(string domain, string NbrType, int Increment, string UserNo, int IsDopCall)
  51. {
  52. string sql = string.Format("CALL pr_SFM_GetOrdNbr('{0}', '{1}', {2}, '{3}', {4}, @NbrResult);", domain, NbrType, Increment, UserNo, IsDopCall);
  53. var getnbr = _businessDbContext.GetNbr.FromSqlRaw(sql).ToList();
  54. return getnbr;
  55. }
  56. /// <summary>
  57. /// 获取单号
  58. /// </summary>
  59. /// <param name="domain"></param>
  60. /// <param name="NbrType">类型</param>
  61. /// <param name="Increment">步长</param>
  62. /// <param name="UserNo">用户账号</param>
  63. /// <param name="IsDopCall"></param>
  64. /// <returns></returns>
  65. public string GetSeqIdList(string domain, int Increment, int IsDopCall)
  66. {
  67. //CALL pr_SFM_GetSequenceID ('8010',1,@p_SequenceID,1,@p_ReturnMsg)
  68. //string sql = string.Format("exec pr_SFM_GetSequenceID @Domain='{0}',@Increment={1},@IsDopCall={2}", domain, Increment, IsDopCall);
  69. string sql = string.Format("CALL pr_SFM_GetSequenceID ('{0}',{1},@p_SequenceID,{2},@p_ReturnMsg);", domain, Increment, IsDopCall);
  70. var rst = _businessDbContext.GetNbr.FromSqlRaw(sql).ToList();
  71. if (rst.Any())
  72. {
  73. return rst[0].NbrResult.ToString();
  74. }
  75. return "";
  76. }
  77. }
  78. }