PublicFunction.cs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Data;
  5. using System.Text.RegularExpressions;
  6. using MySystem.PxcModels;
  7. using Library;
  8. namespace MySystem
  9. {
  10. public class PublicFunction
  11. {
  12. public static decimal NumberFormat(decimal number, int floatCount = 2)
  13. {
  14. string str = number.ToString();
  15. if (str.Contains("."))
  16. {
  17. string[] list = str.Split('.');
  18. if (list[1].Length > floatCount)
  19. {
  20. str = list[0] + "." + list[1].Substring(0, floatCount);
  21. }
  22. }
  23. else
  24. {
  25. str += ".00";
  26. }
  27. return decimal.Parse(str);
  28. }
  29. public static string GetPublicParam(WebCMSEntities db, string Key)
  30. {
  31. CustomTagSet set = db.CustomTagSet.FirstOrDefault(m => m.Tags == Key);
  32. if(set != null)
  33. {
  34. return set.Contents;
  35. }
  36. return "";
  37. }
  38. public static int FeeSetRecord(WebCMSEntities db, PosMachinesTwo pos, PosMerchantInfo mer, decimal ChangeFee)
  39. {
  40. PosMachinesFeeChangeRecord query = db.PosMachinesFeeChangeRecord.FirstOrDefault(m => m.PosId == pos.Id && m.Status == 0);
  41. if(query == null)
  42. {
  43. query = db.PosMachinesFeeChangeRecord.Add(new PosMachinesFeeChangeRecord()
  44. {
  45. CreateDate = DateTime.Now, //创建时间
  46. Sort = pos.BrandId, //品牌Id
  47. UserId = pos.BuyUserId, //创客
  48. PosId = pos.Id, //机具Id
  49. PosSn = pos.PosSn,
  50. MerNo = mer.MerchantNo,
  51. MerchantId = mer.Id,
  52. PosUserId = pos.BuyUserId, //机具所属人
  53. ChangeFee = ChangeFee, //调整费率
  54. }).Entity;
  55. db.SaveChanges();
  56. }
  57. query.UpdateDate = DateTime.Now; //创建时间
  58. query.Sort = pos.BrandId; //品牌Id
  59. query.UserId = pos.BuyUserId; //创客
  60. query.PosId = pos.Id; //机具Id
  61. query.PosSn = pos.PosSn;
  62. query.MerNo = mer.MerchantNo;
  63. query.MerchantId = mer.Id;
  64. query.PosUserId = pos.BuyUserId; //机具所属人
  65. query.ChangeFee = ChangeFee; //调整费率
  66. db.SaveChanges();
  67. return query.Id;
  68. }
  69. #region 发送分表数据
  70. public static void SplitTradeRecord(TradeRecord obj, string TradeMonth)
  71. {
  72. RedisDbconn.Instance.AddList("AddTradeRecordQueue", Newtonsoft.Json.JsonConvert.SerializeObject(obj) + "#cut#" + TradeMonth);
  73. }
  74. public static void SplitUserAccountRecord(UserAccountRecord obj, string TradeMonth)
  75. {
  76. RedisDbconn.Instance.AddList("AddUserAccountRecordQueue", Newtonsoft.Json.JsonConvert.SerializeObject(obj) + "#cut#" + TradeMonth);
  77. }
  78. #endregion
  79. #region 统计机具绑定数据
  80. public static void StatUserMachineData(int UserId, int BrandId, int Count)
  81. {
  82. using (WebCMSEntities db = new WebCMSEntities())
  83. {
  84. string IdBrand = UserId + "_" + BrandId;
  85. UserMachineData MachineData = db.UserMachineData.FirstOrDefault(m => m.IdBrand == IdBrand);
  86. if (MachineData == null)
  87. {
  88. MachineData = db.UserMachineData.Add(new UserMachineData()
  89. {
  90. IdBrand = IdBrand,
  91. }).Entity;
  92. db.SaveChanges();
  93. }
  94. if (Count < 0)
  95. {
  96. MachineData.TotalMachineCount -= Math.Abs(Count);
  97. MachineData.UnBindCount -= Math.Abs(Count);
  98. }
  99. else
  100. {
  101. MachineData.TotalMachineCount += Count;
  102. MachineData.UnBindCount += Count;
  103. }
  104. db.SaveChanges();
  105. }
  106. }
  107. #endregion
  108. }
  109. }