Пример #1
0
        public async Task <int> InsertPOWithFarmerOrderAsync(FarmerOrderViewModel farmerOrder, UserSession userSession)
        {
            var poId = await InsertPOAsync(farmerOrder.BuyingDate, userSession);

            foreach (var orItem in farmerOrder.Items)
            {
                var poItem = new PurchaseOrderItem()
                {
                    PriceLimit        = 0,
                    PriceRecommend    = orItem.Price,
                    ProductId         = orItem.ProductId,
                    PurchasingOrderId = poId,
                    StatusCode        = UI.PurchaseOrders.Enumerations.PurchaseOrderStatus.purchasing,
                    Quantity          = orItem.OrderedQuantity,
                    UomName           = orItem.UoM?.Name ?? "",
                };

                var itemId = await InsertPOItemAsync(poItem, userSession);
            }

            return(poId);
        }
 public InsertPOWithFarmerOrderCommand(FarmerOrderViewModel farmerOrder)
 {
     FarmerOrder = farmerOrder;
 }
Пример #3
0
        public async Task <FarmerOrderViewModel> Get(long id)
        {
            FarmerOrderViewModel result = null;
            string cmd = $@"SELECT * FROM `farmer_order` o
                            LEFT JOIN `farmer` f ON o.farmer_id = f.id AND f.is_used = 1 AND f.is_deleted = 0
                            LEFT JOIN `farmer_order_item` i ON i.farmer_order_id = o.id
                            LEFT JOIN `product` p ON p.id = i.product_id AND p.is_used = 1 AND p.is_deleted = 0
                            LEFT JOIN `uom` u ON u.id = i.uom_id AND u.is_used = 1 AND u.is_deleted = 0
                            WHERE o.`id` = {id} AND o.is_deleted = 0";

            if (DbConnection != null)
            {
                var rd = await DbConnection.QueryMultipleAsync(cmd, transaction : DbTransaction);

                rd.Read <FarmerOrder, Farmer, FarmerOrderItem, Product, UoM, FarmerOrderViewModel>(
                    (orderRs, fRs, itemRs, pRs, uRs) =>
                {
                    if (result == null)
                    {
                        result = CommonHelper.Mapper <FarmerOrder, FarmerOrderViewModel>(orderRs);
                    }

                    if (result.Farmer == null)
                    {
                        result.Farmer = fRs;
                    }

                    var item = result.Items.FirstOrDefault(i => i.Id == itemRs.Id);
                    if (item == null)
                    {
                        item = CommonHelper.Mapper <FarmerOrderItem, FarmerOrderItemViewModel>(itemRs);
                        result.Items.Add(item);
                    }

                    item.Product = pRs;
                    item.UoM     = uRs;

                    return(result);
                }
                    );

                return(result);
            }
            else
            {
                using (var conn = DALHelper.GetConnection())
                {
                    var rd = await conn.QueryMultipleAsync(cmd, transaction : DbTransaction);

                    rd.Read <FarmerOrder, Farmer, FarmerOrderItem, Product, UoM, FarmerOrderViewModel>(
                        (orderRs, fRs, itemRs, pRs, uRs) =>
                    {
                        if (result == null)
                        {
                            result = CommonHelper.Mapper <FarmerOrder, FarmerOrderViewModel>(orderRs);
                        }

                        if (result.Farmer == null)
                        {
                            result.Farmer = fRs;
                        }

                        var item = result.Items.FirstOrDefault(i => i.Id == itemRs.Id);
                        if (item == null)
                        {
                            item = CommonHelper.Mapper <FarmerOrderItem, FarmerOrderItemViewModel>(itemRs);
                            result.Items.Add(item);
                        }

                        item.Product = pRs;
                        item.UoM     = uRs;

                        return(result);
                    }
                        );


                    return(result);
                }
            }
        }
Пример #4
0
 public AddCommand(FarmerOrderViewModel order)
 {
     Order = order;
 }
 public UpdateInCollectorCommand(FarmerOrderViewModel order)
 {
     Order = order;
 }
Пример #6
0
 public UpdateCommand(FarmerOrderViewModel order)
 {
     Order = order;
 }