public ResponseModel getorderdetailsbyclaimid(int CustomerID, int ClaimID) { CustomOrderDetailsByClaim objorderMaster = new CustomOrderDetailsByClaim(); OrderCaller orderCaller = new OrderCaller(); ResponseModel objResponseModel = new ResponseModel(); int statusCode = 0; string statusMessage = ""; try { string token = Convert.ToString(Request.Headers["X-Authorized-Token"]); Authenticate authenticate = new Authenticate(); authenticate = SecurityService.GetAuthenticateDataFromTokenCache(Cache, SecurityService.DecryptStringAES(token)); objorderMaster = orderCaller.GetOrderListByClaimID(new OrderService(Cache, Db), CustomerID, ClaimID, authenticate.TenantId); statusCode = objorderMaster == null ? (int)EnumMaster.StatusCode.RecordNotFound : (int)EnumMaster.StatusCode.Success; statusMessage = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)statusCode); objResponseModel.Status = true; objResponseModel.StatusCode = statusCode; objResponseModel.Message = statusMessage; objResponseModel.ResponseData = objorderMaster; } catch (Exception) { throw; } return(objResponseModel); }
/// <summary> /// Get Order List By ClaimID /// </summary> /// <param name="CustomerID"></param> /// <param name="ClaimID"></param> /// <param name="TenantID"></param> /// <returns></returns> public CustomOrderDetailsByClaim getOrderListByClaimID(int CustomerID, int ClaimID, int TenantID) { DataSet ds = new DataSet(); CustomOrderDetailsByClaim customClaimMaster = new CustomOrderDetailsByClaim(); try { conn = Db.Connection; MySqlCommand cmd = new MySqlCommand("SP_GetOrderDetailByClaimID", conn); cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@Claim_ID", ClaimID); cmd.Parameters.AddWithValue("@Customer_ID", CustomerID); cmd.Parameters.AddWithValue("@Tenant_ID", TenantID); MySqlDataAdapter da = new MySqlDataAdapter(); da.SelectCommand = cmd; da.Fill(ds); // CustomOrderDetailsByClaim customClaimMaster = new CustomOrderDetailsByClaim(); if (ds != null && ds.Tables[0] != null) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { //CustomOrderDetailsByClaim customClaimMaster = new CustomOrderDetailsByClaim(); customClaimMaster.TicketClaimID = Convert.ToInt32(ds.Tables[0].Rows[i]["TicketClaimID"]); customClaimMaster.ClaimCategory = Convert.ToString(ds.Tables[0].Rows[i]["ClaimCategory"]); customClaimMaster.ClaimSubCategory = Convert.ToString(ds.Tables[0].Rows[i]["ClaimSubCategory"]); customClaimMaster.ClaimType = Convert.ToString(ds.Tables[0].Rows[i]["ClaimType"]); customClaimMaster.ClaimAskedFor = Convert.ToString(ds.Tables[0].Rows[i]["ClaimAskedFor"]); customClaimMaster.StatusID = Convert.ToInt32(ds.Tables[0].Rows[i]["StatusID"]); customClaimMaster.CusotmerID = Convert.ToInt32(ds.Tables[0].Rows[i]["CustomerID"]); customClaimMaster.CusotmerName = Convert.ToString(ds.Tables[0].Rows[i]["CustomerName"]); customClaimMaster.MobileNumber = Convert.ToString(ds.Tables[0].Rows[i]["CustomerPhoneNumber"]); customClaimMaster.EmailID = Convert.ToString(ds.Tables[0].Rows[i]["CustomerEmailId"]); customClaimMaster.Gender = Convert.ToInt32(ds.Tables[0].Rows[i]["GenderID"]); customClaimMaster.OrderMasterID = Convert.ToInt32(ds.Tables[0].Rows[i]["OrderMasterID"]); customClaimMaster.OrderNumber = Convert.ToString(ds.Tables[0].Rows[i]["OrderNumber"]); customClaimMaster.InvoiceNumber = Convert.ToString(ds.Tables[0].Rows[i]["BillID"]); customClaimMaster.InvoiceDate = Convert.ToDateTime(ds.Tables[0].Rows[i]["InvoiceDate"]); customClaimMaster.DateFormat = customClaimMaster.InvoiceDate.ToString("dd/MMM/yyyy"); customClaimMaster.StoreCode = Convert.ToString(ds.Tables[0].Rows[i]["StoreCode"]); customClaimMaster.StoreAddress = Convert.ToString(ds.Tables[0].Rows[i]["Address"]); customClaimMaster.PaymentModename = Convert.ToString(ds.Tables[0].Rows[i]["PaymentModename"]); int orderMasterId = Convert.ToInt32(ds.Tables[0].Rows[i]["OrderMasterID"]); customClaimMaster.OrderItems = ds.Tables[1].AsEnumerable().Where(x => Convert.ToInt32(x.Field <int>("OrderMasterID")). Equals(orderMasterId)).Select(x => new OrderItem() { OrderItemID = Convert.ToInt32(x.Field <int>("OrderItemID")), OrderMasterID = Convert.ToInt32(x.Field <int>("OrderMasterID")), ItemName = Convert.ToString(x.Field <string>("ItemName")), InvoiceNo = Convert.ToString(x.Field <string>("InvoiceNo")), ItemPrice = Convert.ToInt32(x.Field <decimal>("ItemPrice")), PricePaid = Convert.ToInt32(x.Field <decimal>("PricePaid")), Discount = Convert.ToInt32(x.Field <decimal>("Discount")), }).ToList(); customClaimMaster.ItemCount = customClaimMaster.OrderItems.Count(); customClaimMaster.ItemPrice = customClaimMaster.OrderItems.Sum(item => item.ItemPrice); customClaimMaster.PricePaid = customClaimMaster.OrderItems.Sum(item => item.PricePaid); int MasterId = Convert.ToInt32(ds.Tables[0].Rows[i]["TicketClaimID"]); customClaimMaster.Comments = ds.Tables[2].AsEnumerable().Where(x => Convert.ToInt32(x.Field <int>("TicketClaimID")). Equals(MasterId)).Select(x => new UserComment() { Name = Convert.ToString(x.Field <string>("Name")), Comment = Convert.ToString(x.Field <string>("ClaimComment")), datetime = Convert.ToString(x.Field <string>("CommentAt")) }).ToList(); //objorderMaster.Add(customClaimMaster); } } } catch (Exception ex) { throw ex; } return(customClaimMaster); }