public void AddOrder(OrderViewModel order)
        {
            if (!validMenuItems(order.OrderItemsIds))
            {
                throw new InvalidOrderListMenuIdException();
            }

            Order new_order = new Order {
                DateOfOrder  = (DateTime)order.DateOfOrder,
                CustomerName = order.CustomerName,
                IsPickup     = (bool)order.IsPickup,
                Address      = order.Address,
                IsCancelled  = false
            };

            _db.Orders.Add(new_order);
            _db.SaveChanges();

            foreach (int i in order.OrderItemsIds)
            {
                var orderlink = new OrderLink {
                    OrderId    = new_order.Id,
                    MenuItemId = i
                };
                _db.OrderLinks.Add(orderlink);
                _db.SaveChanges();
            }
        }
Exemplo n.º 2
0
        public IActionResult AddOrderLink([FromBody] OrderLink orderLink)
        {
            var orderLnk = _db.AddOrder(orderLink);

            if (orderLnk == null)
            {
                return(Json(BadRequest()));
            }
            return(Json(orderLnk));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 修改一条数据
        /// </summary>
        /// <param name="main"></param>
        /// <param name="linkInfo"></param>
        /// <param name="report"></param>
        /// <returns></returns>
        public bool UpdateMainThreeTab(OrderMain main, OrderLink linkInfo, IndustryReport report)
        {
            int result = 0;

            SqlParameter[] parameters =
            {
                new SqlParameter("@orderNo",     SqlDbType.VarChar,   100),
                new SqlParameter("@typeId",      SqlDbType.Int,         4),
                new SqlParameter("@state",       SqlDbType.Int,         4),

                new SqlParameter("@amount",      SqlDbType.Decimal),
                new SqlParameter("@paySate",     SqlDbType.Int,         4),
                new SqlParameter("@payMent",     SqlDbType.VarChar,    50),
                new SqlParameter("@Num",         SqlDbType.Int,         4),

                //new SqlParameter("@loginName",SqlDbType.VarChar,50),
                new SqlParameter("@phone",       SqlDbType.VarChar,    50),
                new SqlParameter("@tel",         SqlDbType.VarChar,    50),
                new SqlParameter("@email",       SqlDbType.VarChar,    50),

                new SqlParameter("@Company",     SqlDbType.VarChar,    50),
                new SqlParameter("@address",     SqlDbType.VarChar,    50),
                new SqlParameter("@sex",         SqlDbType.Bit),
                new SqlParameter("@fax",         SqlDbType.VarChar,    50),
                new SqlParameter("@position ",   SqlDbType.VarChar,    50),
                new SqlParameter("@Note",        SqlDbType.VarChar,  3000),
                new SqlParameter("@LinkName",    SqlDbType.VarChar,    50),
                //new SqlParameter("@reportID",SqlDbType.Int),
                new SqlParameter("@reportPrice", SqlDbType.VarChar,    80),
                new SqlParameter("@flag",        SqlDbType.VarChar,    50),
            };
            parameters[0].Value = main.orderNo;
            parameters[1].Value = main.typeId;
            parameters[2].Value = main.state;

            parameters[3].Value = main.amount;
            parameters[4].Value = main.paySate;
            parameters[5].Value = main.payMent;
            parameters[6].Value = main.num;
            //parameters[7].Value = linkInfo.loginName;
            parameters[7].Value  = linkInfo.phone;
            parameters[8].Value  = linkInfo.tel;
            parameters[9].Value  = linkInfo.email;
            parameters[10].Value = report.Company;
            parameters[11].Value = report.address;
            parameters[12].Value = report.sex;
            parameters[13].Value = report.fax;
            parameters[14].Value = report.position;
            parameters[15].Value = report.Note;
            parameters[16].Value = report.LinkName;
            //parameters[18].Value = report.reportID;
            parameters[17].Value = report.reportPrice;
            parameters[18].Value = "updateManage";
            return(DbHelperSQL.RunProcLob("OrderThreeTabMain_insert", parameters));
        }
Exemplo n.º 4
0
        public (int, string) CreateLink(string name)
        {
            int    linkId  = -1;
            string message = string.Empty;

            try
            {
                MatchbookDbContext dbContext = new MatchbookDbContext();
                OrderLink          orderLink = new OrderLink()
                {
                    Name = name
                };
                dbContext.OrderLink.Add(orderLink);
                dbContext.SaveChanges();
                linkId = dbContext.OrderLink.OrderByDescending(link => link.Id).FirstOrDefault().Id ?? -1;
            }
            catch (Exception ex)
            {
                message = ex.Message;
            }
            return(linkId, message);
        }
Exemplo n.º 5
0
        public async void Task_GetLinkById_Return_OKResult()
        {
            //Arrange
            var controller = new OrderLinkController(MatchbookDbContextWithData);
            var linkId     = 1;

            var linkid = new OrderLink
            {
                LinkedOrders = new List <Order> {
                    DataGenerator.NewOrder(), DataGenerator.NewOrder()
                },
                LinkName = "Test"
            };

            MatchbookDbContextWithData.OrderLink.Add(linkid);
            MatchbookDbContextWithData.SaveChanges();

            //Act
            var data = controller.Get(linkId);

            //Assert
            Assert.IsType <OkObjectResult>(data);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public OrderLink GetModel(string orderNo)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 linkId,orderNo,loginName,phone,tel,email from OrderLink ");
            strSql.Append(" where orderNo=@orderNo");
            SqlParameter[] parameters =
            {
                new SqlParameter("@orderNo", SqlDbType.VarChar, 50)
            };
            parameters[0].Value = orderNo;

            OrderLink model = new OrderLink();
            DataSet   ds    = DbHelperSQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["linkId"].ToString() != "")
                {
                    model.linkId = int.Parse(ds.Tables[0].Rows[0]["linkId"].ToString());
                }
                if (ds.Tables[0].Rows[0]["orderNo"].ToString() != "")
                {
                    model.orderNo = ds.Tables[0].Rows[0]["orderNo"].ToString();
                }
                model.loginName = ds.Tables[0].Rows[0]["loginName"].ToString();
                model.phone     = ds.Tables[0].Rows[0]["phone"].ToString();
                model.tel       = ds.Tables[0].Rows[0]["tel"].ToString();
                model.email     = ds.Tables[0].Rows[0]["email"].ToString();
                return(model);
            }
            else
            {
                return(null);
            }
        }
Exemplo n.º 7
0
    private void bindModel(string orderNo)
    {
        orReport        = OrRBll.GetModel(orderNo);
        orLink          = orlinkBll.GetModel(orderNo);
        orMain          = maBll.GetModel(orderNo);
        repModel        = Bll.GetModel(orReport.reportID);
        txtCompany.Text = orReport.Company.Trim();
        txtAddress.Text = orReport.address.Trim();
        txtLinkMan.Text = orReport.LinkName.Trim();
        txtFax.Text     = orReport.fax.Trim();
        txtMeo.Text     = orReport.Note.Trim();
        txtPostion.Text = orReport.position.Trim();
        txtAmount.Text  = orMain.amount.ToString();
        txtNum.Text     = orMain.num.ToString();
        txtPayMent.Text = orMain.payMent.Trim();
        txtOrderNo.Text = orMain.orderNo;
        txtPrice.Text   = orReport.reportPrice;
        txtName.Text    = repModel.Reportname;
        switch (orMain.state)
        {
        case 0:
            rdoNo.Checked = true;
            break;

        case 1:
            rdoYes.Checked = true;
            break;

        case 2:
            rdoWeiCL.Checked = true;
            break;

        default:
            break;
        }
        if (orMain.paySate == 0)
        {
            rdoNoPay.Checked = true;
        }
        else
        {
            rdoPay.Checked = true;
        }
        txtEmail.Text = orLink.email.Trim();
        txtPhone.Text = orLink.phone.Trim();
        string tel = orLink.tel;

        if (!string.IsNullOrEmpty(tel))
        {
            string[] telLen = tel.Split(',');
            if (telLen.Length == 1)
            {
                txtTel.Text = orLink.tel;
            }
            else
            {
                txtcontactsTel.Text = telLen[0].ToString();
                txtTel.Text         = telLen[1].ToString();
                txttel2.Text        = telLen[2].ToString();
            }
        }
    }
Exemplo n.º 8
0
 /// <summary>
 /// 修改一条数据
 /// </summary>
 /// <param name="main"></param>
 /// <param name="linkInfo"></param>
 /// <param name="report"></param>
 /// <returns></returns>
 public bool UpdateMainThreeTab(OrderMain main, OrderLink linkInfo, IndustryReport report)
 {
     return(dal.UpdateMainThreeTab(main, linkInfo, report));
 }
Exemplo n.º 9
0
        public HttpResponseMessage Post([FromBody] OrderLinkrequest linkrequest)
        {
            //var response = HttpContext.Response;
            var orderitemssplit = linkrequest.orderIds.Split(',');

            for (int i = 0; i < orderitemssplit.Length; i++)
            {
                var item1 = dbContext.Orders.FirstOrDefault(x => x.Id == Convert.ToUInt32(orderitemssplit[i]));
                if (item1 == null)
                {
                    return(new HttpResponseMessage()
                    {
                        StatusCode = HttpStatusCode.NotFound, ReasonPhrase = "The Order Id not found "
                    });
                }

                if (item1.LinkId == null)
                {
                    for (int j = 1; j < orderitemssplit.Length; j++)
                    {
                        var item2 = dbContext.Orders.FirstOrDefault(x => x.Id == Convert.ToUInt32(orderitemssplit[j]));
                        if (item2 == null)
                        {
                            continue;
                        }
                        if (item2.LinkId == null)
                        {
                            if (item1.SubAccountId == item2.SubAccountId && item1.ProductSymbol == item2.ProductSymbol)
                            {
                                if (dbContext.OrderLink.Any(x => x.LinkName == linkrequest.orderLinkname))
                                {
                                    return(new HttpResponseMessage()
                                    {
                                        StatusCode = HttpStatusCode.Forbidden, ReasonPhrase = "The Link Name is already provided"
                                    });
                                }
                                else
                                {
                                    var orderlink = new OrderLink();
                                    orderlink.LinkName     = linkrequest.orderLinkname;
                                    orderlink.LinkedOrders = new List <Order>()
                                    {
                                        item1, item2
                                    };
                                    dbContext.OrderLink.Add(orderlink);
                                    dbContext.SaveChanges();

                                    item1.LinkId = dbContext.OrderLink.FirstOrDefault(x => x.LinkName == linkrequest.orderLinkname).Id;
                                    item2.LinkId = dbContext.OrderLink.FirstOrDefault(x => x.LinkName == linkrequest.orderLinkname).Id;
                                    dbContext.Orders.Update(item1);
                                    dbContext.Orders.Update(item2);
                                    dbContext.SaveChanges();

                                    return(new HttpResponseMessage()
                                    {
                                        StatusCode = HttpStatusCode.Created, ReasonPhrase = "The Order Link has been created with Link Id" + dbContext.OrderLink.FirstOrDefault(x => x.LinkName == linkrequest.orderLinkname).Id
                                    });
                                }
                            }
                        }
                    }
                    return(new HttpResponseMessage()
                    {
                        StatusCode = HttpStatusCode.OK, ReasonPhrase = "No Matching Item Found "
                    });
                }
                else
                {
                    return(new HttpResponseMessage()
                    {
                        StatusCode = HttpStatusCode.Forbidden, ReasonPhrase = "The Order is already Linked"
                    });
                }
            }

            return(new HttpResponseMessage()
            {
                StatusCode = HttpStatusCode.OK, ReasonPhrase = "No Matching Item Found "
            });
        }