MerchantInfoController.cs 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Data;
  5. using Microsoft.AspNetCore.Mvc;
  6. using Microsoft.AspNetCore.Http;
  7. using Microsoft.Extensions.Logging;
  8. using Microsoft.Extensions.Options;
  9. using Microsoft.AspNetCore.Authorization;
  10. using LitJson;
  11. using Library;
  12. using MySystem.Service.Main;
  13. using MySystem.Models.Main;
  14. using System.Text;
  15. namespace MySystem.Areas.Api.Controllers.v1
  16. {
  17. [Area("Api")]
  18. [Route("Api/v1/[controller]/[action]")]
  19. public class MerchantInfoController : BaseController
  20. {
  21. public MerchantInfoController(IHttpContextAccessor accessor) : base(accessor)
  22. {
  23. }
  24. #region 创客-首页-进件查询
  25. // [Authorize]
  26. public JsonResult MerchantByStatus(string value)
  27. {
  28. value = DesDecrypt(value);
  29. JsonData data = JsonMapper.ToObject(value);
  30. List<Dictionary<string, object>> dataList = MerchantByStatusDo(value);
  31. return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
  32. }
  33. public List<Dictionary<string, object>> MerchantByStatusDo(string value)
  34. {
  35. JsonData data = JsonMapper.ToObject(value);
  36. string SearchKey = data["SearchKey"].ToString();
  37. int Status = int.Parse(function.CheckInt(data["Status"].ToString()));
  38. int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
  39. int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
  40. int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
  41. StringBuilder condition = new StringBuilder();
  42. condition.Condition("UserId", UserId);
  43. if (Status > 0)
  44. {
  45. if (Status == 1) Status = 0;
  46. if (Status == 2) Status = -1;
  47. if (Status == 3) Status = 1;
  48. if (Status == 4) Status = 2;
  49. condition.Condition("Status", Status);
  50. }
  51. if(!string.IsNullOrEmpty(SearchKey))
  52. {
  53. condition.ConditionLike("Name", SearchKey);
  54. }
  55. List<Dictionary<string, object>> list = MerchantInfoService.List(new List<RelationData>(), condition.ToString(), PageNum, PageSize);
  56. List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
  57. foreach (Dictionary<string, object> subdata in list)
  58. {
  59. MerchantAddInfo AddInfo = MerchantAddInfoService.Query(int.Parse(subdata["Id"].ToString()));
  60. Dictionary<string, object> curData = new Dictionary<string, object>();
  61. curData.Add("Name", subdata["Name"]); //名称
  62. curData.Add("Id", subdata["Id"]); //Id
  63. curData.Add("CreateDate", subdata["CreateDate"]); //CreateDate
  64. curData.Add("Status", subdata["Status"]); //Status
  65. curData.Add("SubjectType", AddInfo.SubjectType); //主体类型
  66. dataList.Add(curData);
  67. }
  68. return dataList;
  69. }
  70. #endregion
  71. #region 创客-首页-进件查询-详情
  72. // [Authorize]
  73. public JsonResult MerchantDetailByStatus(string value)
  74. {
  75. value = DesDecrypt(value);
  76. JsonData data = JsonMapper.ToObject(value);
  77. Dictionary<string, object> Obj = MerchantDetailByStatusDo(value);
  78. return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
  79. }
  80. public Dictionary<string, object> MerchantDetailByStatusDo(string value)
  81. {
  82. JsonData data = JsonMapper.ToObject(value);
  83. Dictionary<string, object> Obj = new Dictionary<string, object>();
  84. int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
  85. MerchantInfo query = MerchantInfoService.Query(Id);
  86. MerchantAddInfo addInfo = MerchantAddInfoService.Query(Id);
  87. // Obj.Add("Name", query.Name); //名称
  88. // Obj.Add("CreateDate", query.CreateDate == null ? "" : query.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //提交时间
  89. // Obj.Add("Status", addInfo.Status);
  90. // Obj.Add("DoTime", addInfo.UpdateDate == null ? "" : addInfo.UpdateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));
  91. // Obj.Add("Season", addInfo.WeChatRemark);
  92. // Obj.Add("SignUrl", addInfo.WeChatSignUrl);
  93. // Obj.Add("SubjectType", addInfo.SubjectType);
  94. Obj.Add("Name", query.Name); //名称
  95. Obj.Add("CreateDate", query.CreateDate == null ? "" : query.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //提交时间
  96. List<Dictionary<string, object>> AuditResult = new List<Dictionary<string, object>>();
  97. Dictionary<string, object> WeChat = new Dictionary<string, object>();
  98. WeChat.Add("Name", "微信");
  99. WeChat.Add("Status", addInfo.Status);
  100. WeChat.Add("DoTime", addInfo.UpdateDate == null ? "" : addInfo.UpdateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));
  101. WeChat.Add("Season", addInfo.WeChatRemark);
  102. WeChat.Add("SignUrl", addInfo.WeChatSignUrl);
  103. AuditResult.Add(WeChat);
  104. if(addInfo.QueryCount == -1 || addInfo.QueryCount == 1)
  105. {
  106. Dictionary<string, object> Alipay = new Dictionary<string, object>();
  107. Alipay.Add("Name", "支付宝");
  108. Alipay.Add("Status", addInfo.QueryCount);
  109. Alipay.Add("DoTime", addInfo.UpdateDate == null ? "" : addInfo.UpdateDate.Value.ToString("yyyy-MM-dd HH:mm:ss"));
  110. Alipay.Add("Season", addInfo.AlipayRemark);
  111. Alipay.Add("SignUrl", function.CheckNull(addInfo.AlipaySignUrl).Replace("\\", ""));
  112. AuditResult.Add(Alipay);
  113. }
  114. Obj.Add("Status", addInfo.Status);
  115. Obj.Add("AuditResult", AuditResult); //审核结果
  116. Obj.Add("SubjectType", addInfo.SubjectType);
  117. return Obj;
  118. }
  119. #endregion
  120. #region 检查签名是否合法,合法返回1,不合法返回提示信息
  121. /// <summary>
  122. /// 检查签名是否合法,合法返回1,不合法返回提示信息
  123. /// </summary>
  124. /// <param name="value">请求的参数(json字符串)</param>
  125. /// <param name="signField">要签名的字段</param>
  126. /// <returns></returns>
  127. private string CheckSign(string value, string[] signField)
  128. {
  129. JsonData json = JsonMapper.ToObject(value);
  130. Dictionary<string, string> dic = new Dictionary<string, string>();
  131. for (int i = 0; i < signField.Length; i++)
  132. {
  133. dic.Add(signField[i], json[signField[i]].ToString());
  134. }
  135. string sign = json["sign"].ToString(); //客户端签名字符串
  136. return new Sign().sign(dic, sign);
  137. }
  138. #endregion
  139. }
  140. }