Example #1
0
        /// <summary>
        /// api/getCustomer
        //  ارسال مشخصات یک مشتری
        /// </summary>
        /// <param name="phone">شماره تماس</param>
        /// <returns>مشخصات کاربر</returns>
        public AllClass.EditCustomer Get(string id)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            var data = db.Users
                       .Where(x => x.Mobile == id).ToList();

            if (data.Count() > 0)
            {
                AllClass.EditCustomer ed = new AllClass.EditCustomer();
                ed.name = data[0].Name;
                int iduser = data[0].Id;
                var data2  = db.Customers
                             .Where(x => x.UserId == iduser).ToList();

                if (data2.Count() > 0)
                {
                    ed.email = data2[0].Email;
                }

                ed.phone = id;
                return(ed);
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// api/getOneProduct
        /// مشخصات یک محصول
        /// </summary>
        /// <param name="barcode">بارکد</param>
        /// <returns>مشخصات یک کالا </returns>
        public AllClass.Product Post(AllClass.Barcode barcode)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();


            var data = db.v_ProductDetails
                       .Where(x => x.Barcode == barcode.barcode).ToList();

            if (data.Count() > 0)
            {
                AllClass.Product pr = new AllClass.Product();
                pr.barcode      = data[0].Barcode;
                pr.salePrice    = data[0].SalePrice.ToString();
                pr.companyCost  = (data[0].CompanyCost + data[0].Profit).ToString();
                pr.groupId      = data[0].GroupId.ToString();
                pr.detailedName = data[0].DetailedName;
                pr.description  = data[0].Description;

                if (data[0].Image != null)
                {
                    pr.pic = Convert.ToBase64String(data[0].Image);
                }

                return(pr);
            }
            else
            {
                return(null);
            }
        }
Example #3
0
 /// <summary>
 /// api/insertGroup
 // ایجاد گروه کالا توسط کارشناس
 /// </summary>
 /// <param name="group">
 /// businessId
 /// name
 /// pic
 /// </param>
 /// <returns>
 /// true
 ///
 /// </returns>
 public string Post(AllClass.Group group)
 {
     Models.AndycabarDB db = new Models.AndycabarDB();
     Models.Group       tb = new Models.Group();
     tb.Name       = group.name;
     tb.BusinessId = int.Parse(group.businessId);
     if (group.pic != null)
     {
         tb.Image = Convert.FromBase64String(group.pic);
     }
     db.Groups.Add(tb);
     db.SaveChanges();
     return("true");
 }
        /// <summary>
        ///
        // api/RecentFactorsCustomer
        // دریافت فاکتور های مشتری
        /// </summary>
        /// <param name="phone">موبایل</param>
        /// <returns>
        /// لیست فاکتور ها
        /// </returns>
        public List <Models.v_Factors> Post(AllClass.Phone phone)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            var data = db.Users
                       .Where(x => x.Mobile == phone.phone).ToList();

            if (data.Count() > 0)
            {
                return(db.v_Factors.Where(x => x.CustomerId == data[0].Id).ToList());
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// api/getVerificationCode
        /// تایید کد ارسال شده
        /// </summary>
        /// <param name="checkPhone">شماره تلفن
        /// کد احراز</param>
        /// <returns>
        /// true
        /// false
        /// </returns>
        public string Post([FromBody] AllClass.CheckPhone checkPhone)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            int code = int.Parse(checkPhone.VerificationCode);
            var data = db.Users
                       .Where(x => x.Mobile == checkPhone.phone &&
                              x.VerificationCode == code).ToList();

            if (data.Count > 0)
            {
                return(data[0].Type);
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// api/insertProduct
        /// ذخیره کردن محصول
        /// </summary>
        /// <param name="product">
        /// </param>

        /// <returns>
        /// true
        /// </returns>
        public string Post(AllClass.Product product)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();

            Models.Product tb = new Models.Product();
            tb.Id           = long.Parse(product.barcode);
            tb.CompanyCost  = decimal.Parse(product.companyCost);
            tb.Description  = product.description;
            tb.DetailedName = product.detailedName;
            tb.GroupId      = int.Parse(product.groupId);
            tb.SalePrice    = decimal.Parse(product.salePrice);
            tb.Image        = Convert.FromBase64String(product.pic);
            tb.Profit       = ((decimal.Parse(product.salePrice) - decimal.Parse(product.companyCost)) / 2) + decimal.Parse(product.companyCost);
            db.Products.Add(tb);
            db.SaveChanges();
            return("true");
        }
Example #7
0
        /// <summary>
        /// api/getAmount
        // دریافت موجودی کاربر
        /// </summary>
        /// <param name="phone"></param>
        /// <returns></returns>
        public string Post(AllClass.Phone phone)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            var data = db.Users
                       .Where(x => x.Mobile == phone.phone)
                       .ToList();

            if (data.Count() > 0)
            {
                int id = data[0].Id;
                return(db.Transactions
                       .Where(x => x.CustomerId == id)
                       .Sum(x => x.Amount).ToString());
            }
            else
            {
                return("0");
            }
        }
 /// <summary>
 /// جستجو محصولات
 /// </summary>
 /// <param name="name">مقدار جستجوی ترکیبی</param>
 /// <returns>لیست محصولات</returns>
 public List <Models.Product> Post(AllClass.ProductName name)
 {
     Models.AndycabarDB db = new Models.AndycabarDB();
     return(db.v_ProductSearch
            .Where(x => x.ProductName.Contains(name.name) ||
                   x.GroupName.Contains(name.name) ||
                   x.BusinessName.Contains(name.name))
            .Select(x => new Models.Product
     {
         GroupId = x.GroupId,
         Id = x.productId,
         SalePrice = x.SalePrice,
         CompanyCost = x.CompanyCost,
         Profit = x.Profit,
         Description = x.Description,
         DetailedName = x.ProductName
         , Image = x.imageProduct
     }).ToList());
 }
        /// <summary>
        /// api/insertBascket
        ///ذخیره سبد خرید
        /// </summary>
        /// <param name="bascket">
        /// بارکد کالا
        /// موبایل
        /// </param>
        /// <returns>
        /// جمع قیمت سبد
        /// </returns>
        public string Post([FromBody] AllClass.Bascket bascket)
        {
            string[]           data = bascket.barcode.Split(',');
            Models.AndycabarDB db   = new Models.AndycabarDB();
            decimal            sum  = 0;

            foreach (var item in data)
            {
                var product = db.v_ProductSearch.
                              Where(x => x.Barcode == item).FirstOrDefault();

                sum += (decimal)(product.CompanyCost + product.Profit);
            }
            var user = db.Users
                       .Where(x => x.Mobile == bascket.phone).FirstOrDefault();

            Models.Transaction tb = new Models.Transaction();
            tb.Amount     = sum;
            tb.CustomerId = user.Id;
            tb.Submit     = DateTime.Now;
            db.Transactions.Add(tb);
            var id = db.Transactions
                     .Where(x => x.CustomerId == user.Id)
                     .OrderByDescending(x => x.Id)
                     .Select(x => x.Id).FirstOrDefault();

            int id1 = id;

            foreach (var item in data)
            {
                var product = db.v_ProductSearch
                              .Where(x => x.Barcode == item).FirstOrDefault();

                Models.Associtation_TransactionProduct tb1 = new Models.Associtation_TransactionProduct();
                tb1.TransactionId = id;
                tb1.ProductId     = product.productId;
                db.Associtation_TransactionProduct.Add(tb1);
                db.SaveChanges();
            }

            return(sum.ToString());
        }
        /// <summary>
        /// api/editCustomer
        /// ویرایش پروفایل مشتری
        /// </summary>
        /// <param name="customer">
        /// name
        // email
        //phone
        //</param>
        /// <returns>
        /// true string
        /// false string
        /// </returns>
        public string Post(string id, AllClass.EditCustomer customer)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            var a = db.Users.Where(x => x.Mobile == customer.phone).ToList();

            if (a.Count > 0)
            {
                var data = db.Users
                           .Where(x => x.Mobile == customer.phone)
                           .FirstOrDefault();

                data.Name = customer.name;
                db.SaveChanges();

                var b = db.Customers.Where(x => x.UserId == data.Id).ToList();

                if (b.Count() > 0)
                {
                    var data2 = db.Customers
                                .Where(x => x.UserId == data.Id)
                                .FirstOrDefault();

                    data2.Email = customer.email;
                    db.SaveChanges();
                }
                else
                {
                    Models.Customer tb = new Models.Customer();
                    tb.UserId = data.Id;
                    tb.Email  = customer.email;
                    db.Customers.Add(tb);
                    db.SaveChanges();
                }
                return("true");
            }
            else
            {
                return("false");
            }
        }
        /// <summary>
        /// api/insertAmount
        //افزایش اعتبار
        /// </summary>
        /// <param name="amount"> موبایل و مبلغ</param>
        /// <returns>
        /// true
        /// false
        /// </returns>
        public string Post([FromBody] AllClass.Amount amount)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();

            var data = db.Users
                       .Where(x => x.Mobile == amount.phone).ToList();

            if (data.Count() > 0)
            {
                Models.Transaction tb = new Models.Transaction();
                tb.Amount     = decimal.Parse(amount.amount);
                tb.CustomerId = data[0].Id;
                tb.Submit     = DateTime.Now;
                db.Transactions.Add(tb);
                db.SaveChanges();
                return("true");
            }
            else
            {
                return("false");
            }
        }
Example #12
0
        /// <summary>
        /// api/getGroup
        /// لیست گروه ها
        /// </summary>
        /// <returns>
        /// </returns>
        public List <Models.Group> Post()
        {
            Models.AndycabarDB db = new Models.AndycabarDB();

            return(db.Groups.ToList());
        }
        /// <summary>
        /// api/getPhone
        /// دریافت sms
        /// </summary>
        /// <param name="phone">شماره تماس</param>
        /// <returns>کد احراز هویت</returns>
        public string Post([FromBody] AllClass.Phone phone)
        {
            Models.AndycabarDB db = new Models.AndycabarDB();
            Models.User        tb = new Models.User();
            tb.Mobile           = phone.phone;
            tb.Type             = "Customer";
            tb.Name             = "";
            tb.VerificationCode = new Random().Next(1000, 9999);

            var data = db.Users.Where(x => x.Mobile == phone.phone).ToList();

            if (data.Count() > 0)
            {
                var user = db.Users.Where(x => x.Mobile == phone.phone).FirstOrDefault();
                user.VerificationCode = tb.VerificationCode;
                db.SaveChanges();
                tb.Type = user.Type;
                var httpWebRequest = (HttpWebRequest)WebRequest.Create(" http://api.smsapp.ir/v2/sms/send/simple");
                httpWebRequest.ContentType = "application/json";
                httpWebRequest.Method      = "POST";
                httpWebRequest.Headers.Add("apikey", "HHweSCQ4jCniM2KYKNSTOgmTepEkjXiJOQP4uIcLNi4");

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    string json = "{\"receptor\":\"" + phone.phone + "\"," +
                                  "\"message\":\"" + "اندیکابار \n کد تایید شماره شما : \n" + tb.VerificationCode + "\"," +
                                  "\"sender\":\"30006703451451\"}";

                    streamWriter.Write(json);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    var result = streamReader.ReadToEnd();
                }
                return(tb.VerificationCode.ToString());
            }
            else
            {
                db.Users.Add(tb);
                db.SaveChanges();
                var             userId = db.Users.Where(x => x.Mobile == phone.phone).FirstOrDefault();
                int             userid = userId.Id;
                Models.Customer tb1    = new Models.Customer();
                tb1.UserId = userid;
                tb1.Email  = "";
                db.Customers.Add(tb1);
                db.SaveChanges();
                var httpWebRequest = (HttpWebRequest)WebRequest.Create(" http://api.smsapp.ir/v2/sms/send/simple");
                httpWebRequest.ContentType = "application/json";
                httpWebRequest.Method      = "POST";
                httpWebRequest.Headers.Add("apikey", "HHweSCQ4jCniM2KYKNSTOgmTepEkjXiJOQP4uIcLNi4");

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    string json = "{\"receptor\":\"" + phone.phone + "\"," +
                                  "\"message\":\"" + "اندیکابار \n کد تایید شماره شما : \n" + tb.VerificationCode + "\"," +
                                  "\"sender\":\"30006703451451\"}";

                    streamWriter.Write(json);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    var result = streamReader.ReadToEnd();
                }
                return(tb.VerificationCode.ToString());
            }
        }