public override void OnActionExecuting(HttpActionContext actionContext) { if (actionContext.Request.Method.Method != "GET") { string y = ""; int? COMBRNID = null; var urlStrF = ""; string controllerName = actionContext.ControllerContext.ControllerDescriptor.ControllerName; string actionName = actionContext.ActionDescriptor.ActionName; var ss = actionContext.Request.Headers.Where(a => a.Key == "userNameLog").SingleOrDefault(); if (ss.Value != null) { string[] s = actionContext.Request.Headers.Where(a => a.Key == "userNameLog").SingleOrDefault().Value.ToArray(); y = s[0]; if (y.Split('@').Count() > 0) { y = y.Split('@')[0]; } } ; var urlV = actionContext.Request.Headers.Where(a => a.Key == "myCustomUrl").SingleOrDefault(); if (urlV.Value != null) { string[] s = actionContext.Request.Headers.Where(a => a.Key == "myCustomUrl").SingleOrDefault().Value.ToArray(); urlStrF = s[0]; if (urlStrF.Contains("foo")) { urlStrF = System.Text.RegularExpressions.Regex.Split(urlStrF, "&foo")[0]; var x = urlStrF; if (x.Contains("foo")) { urlStrF = x.Split('?')[0]; } } } ; var CompB = actionContext.Request.Headers.Where(a => a.Key == "COMBRNID").SingleOrDefault(); if (CompB.Value != null) { string[] CompBs = actionContext.Request.Headers.Where(a => a.Key == "COMBRNID").SingleOrDefault().Value.ToArray(); if (CompBs[0] == "") { COMBRNID = 0; } else { COMBRNID = int.Parse(CompBs[0]); } } ; UserFormObj = new UserLogFile() { UID = y, DateOnly = DateTime.Now.Date, FormName = controllerName, OpDate = DateTime.Now, OpName = actionName, Comp_Brach = COMBRNID, URL = urlStrF }; } }
//public Task<UserLogFile> InsertAsync(UserLogFile entity) //{ // return Task.Run<UserLogFile>(() => // { // UserLogFileRepo.Add(entity); // return entity; // } // ); //} public Task <UserLogFile> Insert(UserLogFile entity) { return(Task.Run <UserLogFile>(() => { if (entity != null) { var q = UserOperationRepo.GetAll().Where(a => a.LatName == entity.OpName).FirstOrDefault(); if (q != null) { entity.OpName = q.ARName; } if (entity.FormName.Split('_').Count() > 1 || entity.FormName.Split('?').Count() > 1 || entity.FormName.Split('&').Count() > 1) { foreach (var item in UserFormRepo.GetAll()) { if (item.Code.Split('/').Count() > 1) { var q2 = UserFormRepo.GetAll().Where(a => (a.Code.Split('/')[0] == entity.FormName.Split('_')[0]) || (a.Code.Split('/')[0] == entity.FormName.Split('?')[0]) || (a.Code.Split('/')[0] == entity.FormName.Split('&')[0])); foreach (var childItem in q2) { if (entity.FormName.Split('_').Count() > 1) { var q3 = BILL_SETTINGSRepo.GetAll().Where(a => a.BILL_SETTING_ID == int.Parse(entity.FormName.Split('_')[1])).SingleOrDefault(); if (q3 != null) { //entity.FormName = q3.BILL_AR_NAME; //entity.Code = entity.FormName.Split('_')[2]; entity.TypeName = q3.BILL_AR_NAME; entity.FormName = UserFormRepo.GetAll().Where(a => (a.Code == entity.FormName.Split('_')[0]) || (a.Code == entity.FormName.Split('?')[0]) || (a.Code == entity.FormName.Split('&')[0])).SingleOrDefault().ARName; //if (entity.Notes != null) //{ // var temp = entity.Notes; // entity.Notes = null; // entity.Notes = entity.TypeName + " رقم " + temp; //} } else { entity.FormName = childItem.ARName; } } if (entity.FormName.Split('?').Count() > 1) { var q4 = ENTRY_SETTINGSRepo.GetAll().Where(a => a.ENTRY_SETTING_ID == int.Parse(entity.FormName.Split('?')[1])).SingleOrDefault(); if (q4 != null) { //entity.FormName = q4.ENTRY_SETTING_AR_NAME; //entity.Code = entity.FormName.Split('?')[2]; entity.TypeName = q4.ENTRY_SETTING_AR_NAME; //if (entity.Notes != null) //{ // var temp = entity.Notes; // entity.Notes = null; // entity.Notes = entity.TypeName + " رقم " + temp; //} var x = UserFormRepo.GetAll().Where(a => (a.Code == entity.FormName.Split('_')[0]) || (a.Code == entity.FormName.Split('?')[0]) || (a.Code == entity.FormName.Split('&')[0])).SingleOrDefault(); if (x != null) { entity.FormName = x.ARName; } //entity.FormName = childItem.ARName; //entity.FormName = UserFormRepo.GetAll().Where(a => (a.Code == entity.FormName.Split('_')[0]) || (a.Code == entity.FormName.Split('?')[0]) || (a.Code == entity.FormName.Split('&')[0])).SingleOrDefault().ARName; } else { entity.FormName = childItem.ARName; } } if (entity.FormName.Split('&').Count() > 1) { var q5 = ACCOUNTSRepo.GetAll().Where(a => a.ACC_ID == int.Parse(entity.FormName.Split('&')[1])).SingleOrDefault(); if (q5 != null) { var q4 = ACCOUNTS_TYPESRepo.GetAll().Where(a => a.ACC_TYPE_ID == q5.ACC_TYPE_ID).SingleOrDefault(); if (q4 != null) { entity.Code = entity.FormName.Split('&')[2]; entity.TypeName = q4.ACC_TYPE_AR_NAME; entity.FormName = childItem.ARName; } else { entity.FormName = childItem.ARName; } } } } } } } else { if (entity.FormName.Split('+').Count() > 1) { var q2 = UserFormRepo.GetAll().Where(a => a.Code == entity.FormName.Split('+')[0]).FirstOrDefault(); if (q2 != null) { entity.Code = entity.FormName.Split('+')[1]; entity.FormName = q2.ARName; } } else { var q2 = UserFormRepo.GetAll().Where(a => a.Code == entity.FormName).FirstOrDefault(); if (q2 != null) { entity.FormName = q2.ARName; } } //if (entity.Notes != null&& entity.TypeName==null) //{ // var temp = entity.Notes; // entity.Notes = null; // entity.Notes = entity.FormName + " رقم " + temp; //} } //var q2 = UserFormRepo.GetAll().Where(a => a.Code == entity.FormName).FirstOrDefault(); //if (q2 != null) //{ // entity.FormName = q2.ARName; //} if (entity.Notes != null) { var temp = entity.Notes; entity.Notes = null; if (entity.TypeName != null) { entity.Notes = entity.TypeName + " رقم " + temp; } else { entity.Notes = entity.FormName + " رقم " + temp; } } if (entity.IDCRUD != "1") { UserLogFileRepo.Add(entity); } } return entity; } )); }