示例#1
0
        public async Task <IActionResult> customerSendTestNotification(string DeviceId, string Message)
        {
            fcmNotification objfcmNotification = new fcmNotification();

            objfcmNotification.customerNotification(DeviceId, Message, "", "test");
            string myJson = "{\"Message\": " + "\"Notification Sent Successfully\"" + "}";

            return(Ok(myJson));
        }
示例#2
0
        public async Task <IActionResult> deliveryboyassignPost(deliveryboyAssignorderViewModel model)
        {
            if (ModelState.IsValid)
            {
                orders obj = _ordersServices.GetById(model.id);// await _usermanager.GetUserAsync(User);

                if (obj == null)
                {
                    TempData["error"] = "Order Not Found";
                }
                else
                {
                    if (string.IsNullOrEmpty(Convert.ToString(obj.deliveryboyid)))
                    {
                        obj.deliveryboyid = model.deliveryboyid;
                        obj.acceptedby    = "Admin";
                        await _ordersServices.UpdateAsync(obj);

                        var          driverdetails   = _driverRegistrationServices.GetById(model.deliveryboyid);
                        orderhistory objorderhistory = new orderhistory();
                        objorderhistory.oid         = model.id;
                        objorderhistory.placedate   = DateTime.UtcNow;
                        objorderhistory.orderstatus = "Admin assign Order to this Delivery boy." + driverdetails.name + "  . OrderID  :" + model.id;
                        await _orderhistoryServices.CreateAsync(objorderhistory);

                        #region "Notification customer and store"
                        int             customerid         = obj.customerid;
                        string          customerDeviceId   = _CustomerRegistrationservices.GetById(customerid).deviceid;
                        string          customerMsg        = driverdetails.name + " will be Delivering Your order";
                        string          customerTitle      = "Delivering Your order";
                        fcmNotification objfcmNotification = new fcmNotification();
                        objfcmNotification.customerNotification(customerDeviceId, customerMsg, "", customerTitle);

                        var    storeDeviceId = _usermanager.Users.Where(x => x.Id == obj.storeid).FirstOrDefault().deviceid;
                        string storeMsg      = "Admin Assign delivery boy " + driverdetails.name + " to this Order Id : " + model.id;
                        string storeTitle    = "Assign Deliveryboy";
                        objfcmNotification.storeNotification(storeDeviceId, storeMsg, "", storeTitle);

                        #endregion

                        TempData["success"] = "Order Assign To Delivery boy Successfully";
                        //string myJson = "{\"message\": " + "\"Order Assign To Delivery boy Successfully\"" + "}";
                        //return Ok(obj);
                    }
                    else
                    {
                        TempData["error"] = "This Order Id Already assign delivery boy";
                        //string myJson = "{\"message\": " + "\"This Order Id Already assign delivery boy\"" + "}";
                        //return BadRequest(myJson);
                    }
                }
            }
            return(RedirectToAction("test"));
        }
示例#3
0
        public IActionResult changeorderStatus(int id, string status)
        {
            //orders obj = _ordersServices.GetById(id);
            //obj.orderstatus = status;
            //_ordersServices.UpdateAsync(obj);
            var paramter = new DynamicParameters();

            paramter.Add("@id", id);
            paramter.Add("@orderstatus", status);
            //storedetailsListViewmodel
            _ISP_Call.Execute("orderStatus_Update", paramter);



            var orders = _ordersServices.GetById(id);

            int    customerid          = orders.customerid;
            int    deliveryboyid       = 0;
            string deliveryboyDeviceId = "";
            string storeid             = _ordersServices.GetById(id).storeid;
            var    store          = _storedetailsServices.GetAll().Where(x => x.storeid == storeid).FirstOrDefault();
            string storeLatitude  = store.latitude;
            string storelongitude = store.longitude;
            string storeName      = store.storename;

            if (orders.deliveryboyid == null)
            {
                //deliveryboyid = (int)orders.deliveryboyid;
            }
            else
            {
                deliveryboyid = (int)orders.deliveryboyid;
                //  deliveryboyDeviceId = _driverRegistrationServices.GetById(deliveryboyid).deviceid;
            }


            string customerDeviceId = _CustomerRegistrationservices.GetById(customerid).deviceid;

            if (status == "approved")
            {
                #region "customer"
                //string message = "New Order No. - " + id + " Approved by Admin";
                //string title = "Order Approved";

                string message = storeName + " Has Accepted Your Order";
                string title   = "Order Accepted";

                objfcmNotification.customerNotification(customerDeviceId, message, "", title);


                #endregion
                #region "Deliveryboy"

                try
                {
                    var distancedt = _distanceServices.GetById(1);
                    var distance   = distancedt.range;

                    var paramter1 = new DynamicParameters();
                    paramter1.Add("@Latitude", storeLatitude);
                    paramter1.Add("@Longitude", storelongitude);
                    paramter1.Add("@distance", distance);
                    var dt = _ISP_Call.List <getNeareDeliveryboybyLocation>("getNeareDeliveryboybyLocationNew", paramter1);

                    foreach (var item in dt)
                    {
                        string deviceid = item.deviceid;
                        //string message1 = "New Order No. - " + id + " Approved by Admin";
                        //string title1 = "Order Approved";
                        string message1 = "New Order Received";
                        string title1   = "New Order Received";

                        objfcmNotification.deliveryboyNotification(deviceid, message1, "", title1);
                    }
                }

                catch (Exception ex)
                {
                    string ss = ex.Message;
                    throw ex;
                }


                // return Ok(sResponseFromServer);

                #endregion
            }
            else if (status == "cancelledorders")
            {
                #region "customer"
                string message = "Your Order No. - " + id + " has been cancelled";
                string title   = "Cancel Order";

                objfcmNotification.customerNotification(customerDeviceId, message, "", title);


                #endregion
            }
            else if (status == "completedorders")
            {
                ////---------------------------

                //if(orders.paymentstatus == "Cash on Delivery")
                //{
                //    var obj = _deliveryboyPendingAmtServices.GetAll().Where(x => x.deliveryboyid == orders.deliveryboyid).FirstOrDefault();
                //    if (obj == null)
                //    {
                //        var obj1 = new deliveryboyPendingAmt
                //        {
                //            id = 0,
                //            deliveryboyid =(int)orders.deliveryboyid,
                //            amount = orders.amount,
                //            modifydate = DateTime.Now

                //        };
                //        await _deliveryboyPendingAmtServices.CreateAsync(obj1);
                //    }
                //    else
                //    {

                //    }
                //}
                //else
                //{

                //}



                //----------------------


                #region "customer"
                string message = "Your Order No. - " + id + " has been Completed";
                string title   = "Completed Order";

                objfcmNotification.customerNotification(customerDeviceId, message, "", title);


                #endregion
            }
            return(RedirectToAction("test"));
        }