MySelfUtil.cs 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. using MySystem.Models.Main;
  2. using Library;
  3. using MySystem.Service.Main;
  4. using System.Collections.Generic;
  5. using System;
  6. using LitJson;
  7. using MySystem.Areas.Api.Controllers;
  8. namespace MySystem
  9. {
  10. /// <summary>
  11. /// 我的工具类
  12. /// </summary>
  13. public class MySelfUtil
  14. {
  15. #region 到账记录列表
  16. /// <summary>
  17. /// 到账记录列表
  18. /// </summary>
  19. /// <param name="condition">查询条件</param>
  20. /// <param name="pageSize">条数</param>
  21. /// <param name="pageNum">页数</param>
  22. /// <returns></returns>
  23. public static List<Dictionary<string, object>> CardInComeRecordList(int MerchantId, string TradeMonth, string pageSize, string pageNum)
  24. {
  25. DateTime start = new DateTime(int.Parse(TradeMonth.Substring(0, 4)), int.Parse(TradeMonth.Substring(TradeMonth.Length - 2, 2)), 1);
  26. DateTime end = start.AddMonths(1).AddDays(-1);
  27. var merchantInfo = MerchantAddInfoService.Query(MerchantId);
  28. JsonData Info = JsonMapper.ToObject(HaoDaHelper.Instance.CardInComeRecord(merchantInfo.OutMchtNo, start.ToString("yyyy-MM-dd"), end.ToString("yyyy-MM-dd"), merchantInfo.MchtNo, "", "", pageNum, pageSize));
  29. List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
  30. if (Info["code"].ToString() == "0")
  31. {
  32. var list = Info["data"]["list"];
  33. for (int i = 0; i < list.Count; i++)
  34. {
  35. Dictionary<string, object> curData = new Dictionary<string, object>();
  36. var item = list[i];
  37. if (item["settleAccountName"].ToString() != "四川省润观米科技有限公司")
  38. {
  39. curData.Add("Id", item["id"].ToString()); //订单Id
  40. curData.Add("SettleStatus", item["settleStatus"].ToString()); //结算状态(0: 入账成功、1: 入账失败、2: 结算超时、3: 入账受理成功、4: 已提交结算请求、5:已拆分批次、6: 初始化批次信息、7:正在提交结算请求)
  41. curData.Add("SettleDate", item["settleDate"].ToString().Substring(item["settleDate"].ToString().Length - 5, 5)); //结算日期
  42. curData.Add("SettleAmount", (decimal.Parse(item["settleAmount"].ToString()) / 100).ToString("f2")); //结算金额
  43. curData.Add("TradeMchtName", item["tradeMchtName"].ToString()); //收单商户名称
  44. curData.Add("BankName", item["bankName"].ToString()); //开户行名称
  45. dataList.Add(curData);
  46. }
  47. }
  48. }
  49. return dataList;
  50. }
  51. #endregion
  52. #region 到账记录详情
  53. /// <summary>
  54. /// 到账记录详情
  55. /// </summary>
  56. /// <param name="condition">查询条件</param>
  57. /// <param name="pageSize">条数</param>
  58. /// <param name="pageNum">页数</param>
  59. /// <returns></returns>
  60. public static Dictionary<string, object> CardInComeRecordDetail(int MerchantId, string OrderId)
  61. {
  62. var merchantInfo = MerchantAddInfoService.Query(MerchantId);
  63. JsonData Info = JsonMapper.ToObject(HaoDaHelper.Instance.CardInComeDetail(merchantInfo.OutMchtNo, OrderId));
  64. Dictionary<string, object> obj = new Dictionary<string, object>();
  65. if (Info["code"].ToString() == "0")
  66. {
  67. obj.Add("Id", Info["data"]["id"].ToString()); //订单Id
  68. obj.Add("SettleStatus", Info["data"]["settleStatus"].ToString()); //结算状态(0: 入账成功、1: 入账失败、2: 结算超时、3: 入账受理成功、4: 已提交结算请求、5:已拆分批次、6: 初始化批次信息、7:正在提交结算请求)
  69. obj.Add("SettleType", Info["data"]["settleType"].ToString()); //结算周期
  70. obj.Add("SettleDate", Info["data"]["settleDate"].ToString()); //结算日期
  71. obj.Add("ClearTime", Info["data"]["clearTime"].ToString()); //出款受理时间
  72. obj.Add("RemitTime", Info["data"]["remitTime"].ToString()); //出款成功时间
  73. obj.Add("SettleAmount", (decimal.Parse(Info["data"]["settleAmount"].ToString()) / 100).ToString("f2")); //结算金额
  74. obj.Add("TradeMchtName", Info["data"]["tradeMchtName"].ToString()); //收单商户名称
  75. obj.Add("BankName", Info["data"]["bankName"].ToString() + "(" + Info["data"]["cardNo"].ToString().Substring(Info["data"]["cardNo"].ToString().Length - 4, 4) + ")"); //开户行名称
  76. obj.Add("FailureReason", Info["data"]["remark"].ToString()); //出款失败备注
  77. }
  78. return obj;
  79. }
  80. #endregion
  81. #region 我的-设置-修改登录手机号(新手机验证)
  82. /// <summary>
  83. /// 我的-设置-修改登录手机号(新手机验证)
  84. /// </summary>
  85. /// <param name="LoginMobile">原手机号</param>
  86. /// <param name="Mobile">新手机号</param>
  87. /// <returns></returns>
  88. public static string ChangeLoginMobile(string LoginMobile, string Mobile)
  89. {
  90. var info = MerchantLoginInfoService.Query(" and LoginMobile=" + LoginMobile + "");
  91. if (info.Id > 0)
  92. {
  93. Dictionary<string, object> obj = new Dictionary<string, object>();
  94. obj.Add("LoginMobile", Mobile);
  95. MerchantLoginInfoService.Edit(obj, info.Id);
  96. }
  97. return "修改成功";
  98. }
  99. #endregion
  100. #region 商户统计数据(个人中心主界面)
  101. /// <summary>
  102. /// 商户统计数据(个人中心主界面)
  103. /// </summary>
  104. /// <param name="MerchantId">商户Id</param>
  105. /// <returns></returns>
  106. public static Dictionary<string, object> StatData(int MerchantId)
  107. {
  108. Dictionary<string, object> Obj = new Dictionary<string, object>();
  109. var query = MerchantInfoService.Query(MerchantId);
  110. Obj.Add("Name", query.Name); //名称
  111. Obj.Add("TotalAmount", query.TotalAmount.ToString("f2")); //营收总金额
  112. Obj.Add("TotalActual", query.TotalActual.ToString("f2")); //实收总金额
  113. var yesterday = DateTime.Now.AddDays(-1).ToString("yyyyMMdd");
  114. Obj.Add("YesterDayActual", decimal.Parse(function.CheckNum(UserTradeDbconn.Instance.GetTrade(MerchantId, yesterday, "InFactAmount")["InFactAmount"].ToString())).ToString("f2")); //昨日收入
  115. Obj.Add("SettleAmount", 0.00); //待结算金额
  116. Obj.Add("TotalOrder", query.TotalConsumeCount); //累计订单
  117. Obj.Add("TotalCustomer", query.TotalCustomer); //累计客户
  118. Obj.Add("Logo", BaseController.DefaultPic(query.Logo)); //Logo图片
  119. int ConsumeCount = 0;
  120. decimal WeChatTotal = 0;
  121. decimal AlipayTotal = 0;
  122. for (int i = 0; i < 7; i++)
  123. {
  124. string Date = DateTime.Now.AddDays(-i).ToString("yyyyMMdd");
  125. WeChatTotal += decimal.Parse(MerchantAmountSummayService.Sum("TotalActual", " and MerchantId=" + MerchantId + " and PayMode=2 and TradeDate='" + Date + "'")["TotalActual"]);
  126. AlipayTotal += decimal.Parse(MerchantAmountSummayService.Sum("TotalActual", " and MerchantId=" + MerchantId + " and PayMode=1 and TradeDate='" + Date + "'")["TotalActual"]);
  127. }
  128. Obj.Add("SevenDayConsumer", ConsumeCount); //近7日新增会员
  129. Obj.Add("WeChatTotal", WeChatTotal.ToString("f2")); //微信实收
  130. Obj.Add("AlipayTotal", AlipayTotal.ToString("f2")); //支付宝实收
  131. Obj.Add("CreateDate", query.CreateDate == null ? "" : query.CreateDate.Value.ToString("yyyy-MM-dd"));
  132. return Obj;
  133. }
  134. #endregion
  135. }
  136. }