You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
using Business.Authentication; using Business.Mobile; using Business.SendMoney; using Common; using Common.Model; using Common.Model.Config; using JsonRx.AuthFilter; using JsonRx.Helper; using log4net; using Newtonsoft.Json; using Repository.Mobile; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Runtime.Remoting.Messaging; using System.Web.Http; using static Common.Model.DynamicReceiverSetup.DynamicReceiver;
namespace JsonRx.ApiV3 { [RoutePrefix("api/v3")] public class SendTransactionController : ApiController { private readonly IMobileServices _requestServices; private readonly IAuthenticationBusiness _authenticationBusiness; private readonly ISendMoneyBusiness _bussiness; private static readonly ILog Log = LogManager.GetLogger(typeof(SendTransactionController));
/// <summary>
/// </summary>
public SendTransactionController() { }
/// <summary>
/// </summary>
/// <param name="requestServices"></param>
/// <param name="authenticationBusiness"></param>
public SendTransactionController(IMobileServices requestServices, IAuthenticationBusiness authenticationBusiness, ISendMoneyBusiness business) { _requestServices = requestServices; _authenticationBusiness = authenticationBusiness; _bussiness = business; }
[HttpGet] [TokenAuthentication] [Route("mobile/{customer}/FetchCountriesAndServiceTypes")] public IHttpActionResult GetCountryServiceTypeList() { LogicalThreadContext.Properties[LoggerProperty.PROCESSID] = Guid.NewGuid(); LogicalThreadContext.Properties[LoggerProperty.METHODNAME] = "DynamicReceiverField";
Log.Debug("GetCountryServiceTypeList details.");
IEnumerable<string> lang; Request.Headers.TryGetValues("lang", out lang); var l = "en"; if (lang != null) { var ll = lang.ToList();
if (ll.Count > 0) { l = ll[0] == null ? "en" : ll[0].ToString(); } } CallContext.SetData("lang", l);
JsonRxResponse res = _requestServices.GetCountryServiceTypeList(); return Ok(res); }
/// <summary>
/// </summary>
/// <param name="dynamicReceiverRequest"></param>
/// <param name="customerId"></param>
/// <returns></returns>
[HttpGet] [TokenAuthentication] [Route("mobile/receiver/{customer}/dynamicField")] public IHttpActionResult DynamicReceiverField(string customer, [FromUri] DynamicReceiverRequest dynamicReceiverRequest) { LogicalThreadContext.Properties[LoggerProperty.PROCESSID] = Guid.NewGuid(); LogicalThreadContext.Properties[LoggerProperty.CREATEDBY] = customer; LogicalThreadContext.Properties[LoggerProperty.METHODNAME] = "DynamicReceiverField";
Log.Debug("DynamicReceiverField details."); dynamicReceiverRequest.deviceType = Util.GetDeviceType(Request); JsonRxResponse res = _requestServices.DynamicReceiverField(dynamicReceiverRequest, customer);
return Ok(res); }
/// <summary>
/// </summary>
/// <param name="type"></param>
/// <returns></returns>
[HttpGet] //[ApplicationLevelAuthentication]
[Route("mobile/{customer}/GetFieldsByProduct")] public IHttpActionResult GetFieldsByProduct(string customer, [FromUri] MappingType type, [FromUri] string receiverId = "", [FromUri] string payoutPartner = "", [FromUri] bool IsAccountValidation = false) { var processid = Guid.NewGuid(); LogicalThreadContext.Properties[LoggerProperty.PROCESSID] = processid; LogicalThreadContext.Properties[LoggerProperty.CREATEDBY] = customer; LogicalThreadContext.Properties[LoggerProperty.METHODNAME] = "GetFieldsByProduct";
Log.Debug("GetFieldsByProduct | REQUEST : Type: " + type + " Customer: " + customer + " MappingType: " + type + " receiverId: " + receiverId + " payoutPartner: " + payoutPartner + " IsAccountValidation: " + IsAccountValidation); JsonRxResponse res = new JsonRxResponse();
int mappingTypeInt; int.TryParse(type.ToString(), out mappingTypeInt); if (Enum.IsDefined(typeof(MappingType), type) || Enum.IsDefined(typeof(MappingType), mappingTypeInt)) { res = _requestServices.GetFieldsByProduct(type, customer, receiverId);
if (type == Common.Model.Config.MappingType.REWARD_POINT) { RewardFee rewardFee = (RewardFee)res.Data;
rewardFee.ShowValidationAlert = "N"; } } else { res.ErrorCode = "1"; res.Msg = "MappingType is Invalid.";
Log.Debug("GetFieldsByProduct | RESPONSE : " + JsonConvert.SerializeObject(res)); return Ok(res); }
return Ok(res); }
} }
|