public async Task <SettingsSetRes> SetSalesPipelineRoles(SettingsSetReq request, string ticket) { SettingsSetRes response = new SettingsSetRes(); response = await serviceProxy.PostData(_configuration.GetValue <string>("ServiceSettings:SetSalesPipelineRoles"), request, typeof(SettingsSetRes), ticket); return(response); }
public async Task <SettingsSetRes> DeleteSalesPipelineRoles([FromBody] SettingsSetReq request) { var response = new SettingsSetRes(); try { response = await _settingsRepository.DeleteSalesPipelineRoles(request); response.ResponseStatus.Status = "Success"; response.ResponseStatus.ErrorMessage = response != null ? "" : "No Records Found."; } catch (Exception ex) { response.ResponseStatus.Status = "Failure"; response.ResponseStatus.ErrorMessage = "An Error Occurs :- " + ex.Message; } return(response); }
public IActionResult SaveRoleBySalesOffice(SalesPipelineViewModel model) { try { bool IsDuplicate = false; SettingsGetReq request1 = new SettingsGetReq(); SettingsGetRes response1 = new SettingsGetRes(); SettingsSetReq request = new SettingsSetReq(); SettingsSetRes response = new SettingsSetRes(); //Get and check for duplicate request1.Type = "SalesOffice"; request1.LoggedInUserContact_Id = ckUserContactId; response1 = userAndRoleMgmtProviders.GetSalesPipelineRoles(request1, token).Result; //Self check for duplicate if (model.RolesBySalesOfficeList.Where(x => string.IsNullOrWhiteSpace(x.CreateUser)).Count() > 1) { var newlist = model.RolesBySalesOfficeList.Where(x => string.IsNullOrWhiteSpace(x.CreateUser)).ToList(); for (int i = 0; i < newlist.Count(); i++) { for (int j = i + 1; j < newlist.Count(); j++) { if (newlist[i].TypeId == newlist[j].TypeId && newlist[i].RoleId == newlist[j].RoleId && newlist[i].UserId == newlist[j].UserId && newlist[i].Status == newlist[j].Status) { IsDuplicate = true; response.ResponseStatus.Status = "Failure"; response.ResponseStatus.StatusMessage = "Duplicate Record"; break; } } } } //db check for duplicate if self not having any duplicate values if (IsDuplicate == false) { foreach (var a in model.RolesBySalesOfficeList.Where(x => string.IsNullOrWhiteSpace(x.CreateUser))) { var dup1 = response1.Values.Where(x => x.TypeId == a.TypeId && x.RoleId == a.RoleId && x.UserId == a.UserId && a.Status == a.Status).FirstOrDefault(); if (dup1 != null) { IsDuplicate = true; response.ResponseStatus.Status = "Failure"; response.ResponseStatus.StatusMessage = "Duplicate Record"; break; } } } if (IsDuplicate == false) { //Set details List <Values> lst = new List <Values>(); request.LoggedInUserContact_Id = ckUserContactId; request.Type = "SalesOffice"; foreach (var m in model.RolesBySalesOfficeList) { Values obj = new Values(); obj.TypeId = m.TypeId; obj.TypeName = m.TypeName; obj.RoleId = m.RoleId; obj.RoleName = m.RoleName; obj.UserId = m.UserId; obj.UserName = m.UserName; obj.Status = m.Status ?? ""; if (!string.IsNullOrWhiteSpace(obj.Status)) { obj.EditUser = ckUserEmailId; obj.EditDate = DateTime.Now; obj.CreateDate = m.CreateDate; obj.CreateUser = m.CreateUser; } else { obj.CreateUser = m.CreateUser ?? ckUserEmailId; obj.CreateDate = m.CreateDate == DateTime.MinValue ? DateTime.Now : m.CreateDate; } lst.Add(obj); } request.Values = lst; response = userAndRoleMgmtProviders.SetSalesPipelineRoles(request, token).Result; } return(Json(new { responseText = response.ResponseStatus.StatusMessage, status = response.ResponseStatus.Status })); } catch (Exception ex) { throw; } }