示例#1
0
        //public async Task sendpricebyclient(int userid, int cartid, string connectionid, String transportationRequired, string cartDesc,transportationdetailsMV t )
        public async Task sendpricebyclient(int userid, int cartid, string connectionid, String transportationRequired, string cartDesc, string location_name, string person_peygiri, string tell, string location_address)
        {
            var user           = db.tbl_signalrUsers.Where(a => a.userid == userid).SingleOrDefault();
            tbl_purchasekart p = db.tbl_purchasekart.Find(cartid);

            // change purchase staus to DemandPrice
            if (cartid != 0)
            {
                p.status = (int)purchasestatus.DemandPrice;
                if (transportationRequired == "true")
                {
                    tbl_transportaiondetails t = new tbl_transportaiondetails()
                    {
                        cartid           = cartid,
                        location_name    = location_name,
                        person_peygiri   = person_peygiri,
                        tell             = tell,
                        location_address = location_address,
                    };

                    _cart.settransportaiondetails(cartid, t);
                    p.transportationisneeded = true;
                }
                else
                {
                    p.transportationisneeded = false;
                }


                p.pcartDesc = cartDesc;
                db.SaveChanges();
            }

            await Clients.Client(user.connectionId).SendAsync("setDemandPriceStepInClient", p.status.Value);

            // find alireza is online
            var alireza = db.tbl_signalrUsers.Where(a => a.userid == 78).SingleOrDefault();

            if (alireza.connectionId != null && user.userid != 78)
            {
                string msg = $"یک سبد خرید توسط کاربر : {user.fullname} هم اکنون ثبت گردید. ";
                await Clients.Client(alireza.connectionId).SendAsync("showthiscartonline", msg, cartid, userid, p.status.Value);
            }
        }
示例#2
0
        public ActionResult savetransportation(tbl_transportaiondetails t)
        {
            var cart                 = db.tbl_purchasekart.Where(a => a.id == t.cartid).SingleOrDefault();
            var transportcost        = cart.tbl_transportationcost;
            var transportationdetail = db.tbl_transportaiondetails.Where(a => a.cartid == t.cartid);

            if (transportcost.Count() > 0)
            {
                if (transportationdetail.Count() == 0)
                {
                    t.lat      = transportcost.FirstOrDefault().Lat.ToString();
                    t.lng      = transportcost.FirstOrDefault().Lng.ToString();
                    t.distance = transportcost.FirstOrDefault().distance.ToString();
                    db.tbl_transportaiondetails.Add(t);
                }
                else
                {
                    db.tbl_transportaiondetails.RemoveRange(transportationdetail);
                    t.lat      = transportcost.FirstOrDefault().Lat.ToString();
                    t.lng      = transportcost.FirstOrDefault().Lng.ToString();
                    t.distance = transportcost.FirstOrDefault().distance.ToString();
                    db.tbl_transportaiondetails.Add(t);
                }
                if (ModelState.IsValid == true)
                {
                    db.SaveChanges();
                    var q = db.tbl_transportaiondetails.Where(a => a.cartid == t.cartid).SingleOrDefault();



                    return(Json(new { success = 1, errors = ModelState.Values.SelectMany(v => v.Errors).Select(x => x.ErrorMessage).ToList(), l_name = q.location_name, l_address = q.location_address, l_peygiri = q.person_peygiri, l_tell = q.tell }));
                }
                else
                {
                    return(Json(new { success = 2, errors = ModelState.Values.SelectMany(v => v.Errors).Select(x => x.ErrorMessage).ToList() }));
                }
            }
            else
            {
                return(Json(new { success = 3 }));
            }
        }
        public void settransportaiondetails(int cartid, tbl_transportaiondetails tcartdetails)
        {
            var cart = findcartbyid(cartid);

            if (cart.tbl_transportaiondetails.Count() == 0)
            {
                //add
                db.tbl_transportaiondetails.Add(tcartdetails);
            }
            else
            {
                //Edit
                var tdetails = cart.tbl_transportaiondetails.FirstOrDefault();
                tdetails.location_address = tcartdetails.location_address;
                tdetails.location_address = tcartdetails.location_name;
                tdetails.person_peygiri   = tcartdetails.person_peygiri;
                tdetails.tell             = tcartdetails.tell;
            }
            db.SaveChanges();
        }