Esempio n. 1
0
        public ActionResult AddDeliveryDetail(DeliveryDetailModel model)
        {
            var productModel = _productService.GetProductByCode(model.ProductCode);

            if (productModel == null)
            {
                return(Json(new
                {
                    IsProductSkusNotFound = true
                }));
            }

            if (_deliveryService.CheckProductExistedInDelivery(model.DeliveryId, productModel.Id))
            {
                return(Json(new
                {
                    IsDupp = true
                }));
            }

            model.ProductId = productModel.Id;
            model.Quantity  = model.Quantity;
            _deliveryService.InsertDeliveryDetail(model);
            return(Json(new { }));
        }
Esempio n. 2
0
        public ActionResult ProductAddPopup(string btnId, string formId, int deliveryId, ProductListSelected request)
        {
            if (request.ProductIds != null)
            {
                if (!string.IsNullOrEmpty(request.ProductIds))
                {
                    var productIds = request.ProductIds.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                    foreach (var productId in productIds)
                    {
                        var id        = Int32.Parse(productId);
                        var isExisted = _deliveryService.CheckProductExistedInDelivery(deliveryId, id);
                        if (isExisted)
                        {
                            continue;
                        }
                        var deliveryDetailModel = new DeliveryDetailModel()
                        {
                            Quantity     = 1,
                            VatRate      = 0,
                            DiscountRate = 0,
                            ProductId    = id,
                            DeliveryId   = deliveryId,
                            UnitPrice    = 0
                        };
                        _deliveryService.InsertDeliveryDetail(deliveryDetailModel);
                    }
                }
            }

            return(RedirectToAction("Edit", new { id = deliveryId }));
        }
Esempio n. 3
0
 private void CalculateAmount(DeliveryDetailModel deliveryDetailModel)
 {
     deliveryDetailModel.SubAmount      = deliveryDetailModel.UnitPrice * deliveryDetailModel.Quantity;
     deliveryDetailModel.DiscountAmount = deliveryDetailModel.SubAmount * deliveryDetailModel.DiscountRate / 100;
     deliveryDetailModel.VatAmount      = (deliveryDetailModel.SubAmount - deliveryDetailModel.DiscountAmount) *
                                          deliveryDetailModel.VatRate / 100;
     deliveryDetailModel.Amount = deliveryDetailModel.SubAmount - deliveryDetailModel.DiscountAmount +
                                  deliveryDetailModel.VatAmount;
 }
Esempio n. 4
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(DeliveryDetailModel model)
        {
            bool          reValue = true;
            int           reCount = 0;
            StringBuilder strSql  = new StringBuilder();

            strSql.Append("update DeliveryDetail set ");

            strSql.Append(" DeliveryDetailId = @DeliveryDetailId , ");
            strSql.Append(" DeliveryId = @DeliveryId , ");
            strSql.Append(" StockId = @StockId , ");
            strSql.Append(" ActualPrice = @ActualPrice , ");
            strSql.Append(" DeliveryDetailMemo = @DeliveryDetailMemo  ");
            strSql.Append(" where DeliveryDetailId=@DeliveryDetailId  ");

            SqlParameter[] parameters =
            {
                new SqlParameter("@DeliveryDetailId",   SqlDbType.VarChar, 50),
                new SqlParameter("@DeliveryId",         SqlDbType.VarChar, 50),
                new SqlParameter("@StockId",            SqlDbType.Decimal,  9),
                new SqlParameter("@ActualPrice",        SqlDbType.Decimal,  9),
                new SqlParameter("@DeliveryDetailMemo", SqlDbType.VarChar, 200)
            };

            parameters[0].Value = model.DeliveryDetailId;
            parameters[1].Value = model.DeliveryId;
            parameters[2].Value = model.StockId;
            parameters[3].Value = model.ActualPrice;
            parameters[4].Value = model.DeliveryDetailMemo;                            try
            {//异常处理
                reCount = this.helper.ExecSqlReInt(strSql.ToString(), parameters);
            }
            catch (Exception ex)
            {
                this.helper.Close();
                throw ex;
            }
            if (reCount <= 0)
            {
                reValue = false;
            }
            return(reValue);
        }
Esempio n. 5
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(DeliveryDetailModel model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into DeliveryDetail(");
            strSql.Append("DeliveryDetailId,DeliveryId,StockId,ActualPrice,DeliveryDetailMemo");
            strSql.Append(") values (");
            strSql.Append("@DeliveryDetailId,@DeliveryId,@StockId,@ActualPrice,@DeliveryDetailMemo");
            strSql.Append(") ");

            SqlParameter[] parameters =
            {
                new SqlParameter("@DeliveryDetailId",   SqlDbType.VarChar, 50),
                new SqlParameter("@DeliveryId",         SqlDbType.VarChar, 50),
                new SqlParameter("@StockId",            SqlDbType.Decimal,  9),
                new SqlParameter("@ActualPrice",        SqlDbType.Decimal,  9),
                new SqlParameter("@DeliveryDetailMemo", SqlDbType.VarChar, 200)
            };

            parameters[0].Value = model.DeliveryDetailId;
            parameters[1].Value = model.DeliveryId;
            parameters[2].Value = model.StockId;
            parameters[3].Value = model.ActualPrice;
            parameters[4].Value = model.DeliveryDetailMemo;

            bool result = false;

            try
            {
                helper.ExecSqlReInt(strSql.ToString(), parameters);
                result = true;
            }
            catch (Exception ex)
            {
                this.helper.Close();
                throw ex;
            }
            finally
            {
            }
            return(result);
        }
Esempio n. 6
0
        public ActionResult DeliveryDetailEdit(DeliveryDetailModel model)
        {
            var detail = _deliveryService.GetDeliveryDetailById(model.Id);

            if (detail == null)
            {
                return(Json(new DataSourceResult {
                    Errors = "Sản phẩm không tồn tại"
                }));
            }
            if (!ModelState.IsValid)
            {
                return(Json(new DataSourceResult {
                    Errors = ModelState.SerializeErrors()
                }));
            }
            _deliveryService.UpdateDeliveryDetail(model);

            return(new NullJsonResult());
        }